Cómo obtener los últimos 10 objetos solo a partir de datos JSON

FullDISK

Tengo un archivo .json y quiero obtener solo los últimos 10 objetos de este archivo json usando gráficos altos.

Mi problema es que el script está obteniendo objetos completos de la matriz, y solo quiero obtener los últimos 10 objetos ...

Fijo .

Mi código es este:

<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>

<div id="container"></div>
<script>
$.getJSON('https://cdn.rawgit.com/highcharts/highcharts/057b672172ccc6c08fe7dbb27fc17ebca3f5b770/samples/data/usdeur.json',
  function (data) {

   var currentValue = 0.9345;

    Highcharts.chart('container', {
      chart: {
        zoomType: 'x'
      },
      title: {
        text: 'USD to EUR exchange rate over time'
      },
      subtitle: {
        text: document.ontouchstart === undefined ?
            'Click and drag in the plot area to zoom in' : 'Pinch the chart to zoom in'
      },
      xAxis: {
        type: 'datetime'
      },
      yAxis: {
            title: {
              text: 'Exchange rate'
            },
            plotLines: [{
                value: currentValue,
                color: 'green',
                dashStyle: 'Dot',
                width: 1,
                label: {
                    text: currentValue,
                    textAlign: 'left',
                    x: -45
                }
            }]
        },
      legend: {
        enabled: false
      },
      plotOptions: {
        area: {
          fillColor: {
            linearGradient: {
              x1: 0,
              y1: 0,
              x2: 0,
              y2: 1
            },
            stops: [
              [0, Highcharts.getOptions().colors[0]],
              [1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
            ]
          },
          marker: {
            radius: 2
          },
          lineWidth: 1,
          states: {
            hover: {
              lineWidth: 1
            }
          },
          threshold: null
        }
      },

      series: [{
        type: 'area',
        name: 'USD to EUR',
        data: data
      }]
    });
  }
);
</script>

Será genial si alguien me puede ayudar :)

cнŝdk

Bueno, es bastante simple, para obtener solo los últimos 10elementos de su json array, puede filtrarlo, según el índice, usando un Array.filter()método como este:

var last10 = data.filter(function(el, index) {
  return index >= data.length - 10;
});

Solo necesita filtrar los elementos que tienen los últimos 10 índices, usando index >= data.length - 10.

Manifestación:

En su situación, solo necesita filtrar la datamatriz y pasar el nuevo filtrado arrayal gráfico:

<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>
<script src="https://code.highcharts.com/modules/export-data.js"></script>

<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
<script>
  $.getJSON(
    'https://cdn.rawgit.com/highcharts/highcharts/057b672172ccc6c08fe7dbb27fc17ebca3f5b770/samples/data/usdeur.json',
    function(data) {

      var last10 = data.filter(function(el, index) {
        return index >= data.length - 10;
      });

      Highcharts.chart('container', {
        chart: {
          zoomType: 'x'
        },
        title: {
          text: 'USD to EUR exchange rate over time'
        },
        subtitle: {
          text: document.ontouchstart === undefined ?
            'Click and drag in the plot area to zoom in' : 'Pinch the chart to zoom in'
        },
        xAxis: {
          type: 'datetime'
        },
        yAxis: {
          title: {
            text: 'Exchange rate'
          }
        },
        legend: {
          enabled: false
        },
        plotOptions: {
          area: {
            fillColor: {
              linearGradient: {
                x1: 0,
                y1: 0,
                x2: 0,
                y2: 1
              },
              stops: [
                [0, Highcharts.getOptions().colors[0]],
                [1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
              ]
            },
            marker: {
              radius: 2
            },
            lineWidth: 1,
            states: {
              hover: {
                lineWidth: 1
              }
            },
            threshold: null
          }
        },

        series: [{
          type: 'area',
          name: 'USD to EUR',
          data: last10
        }]
      });
    }
  );
</script>

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

¿Cómo obtener los datos de los últimos 10 elementos en django?

Cómo obtener datos de los últimos 90 días a partir de hoy

Cómo obtener datos de los últimos 90 días a partir de hoy

Cómo obtener datos de la última hora a los últimos 10 días en mysql

¿Recyclerview muestra solo los últimos datos json?

¿Cómo obtener solo los últimos 10 archivos modificados del directorio usando Java?

¿Cómo puedo obtener algunos últimos objetos de DB sin leer todos los objetos en Django?

Solo los últimos 25 objetos de los datos extraídos se transfieren a un archivo CSV

Cómo obtener los datos solo en horas de trabajo

Django, ¿Cómo obtener ÚNICAMENTE los últimos datos guardados en la base de datos?

Cómo obtener los datos de los últimos tres meses en una sola consulta

Cómo ordenar ArrayList de objetos por marca de tiempo y obtener los últimos cinco elementos

Sequelize: ¿cómo puedo devolver solo los objetos JSON de los resultados de la base de datos?

Cómo obtener datos exactos de los últimos 5 minutos de cosmos db en C #

Cómo obtener datos de los dos últimos trimestres de la tabla de Oracle

Encuentre solo puntos de datos en los últimos 3 años a partir de hoy

Cómo obtener los valores como matriz a partir de datos JSON

¿Cómo puedo obtener los últimos datos de consulta de ActiveRecord?

cómo obtener los últimos datos de la marca de tiempo

Cómo devolver solo los primeros 10 resultados de datos JSON con React

cómo obtener datos PostCode los últimos dos después del servidor sql de dos espacios

Prometheus DB recibe una llamada Api, ¿cómo puedo obtener datos de los últimos 15 minutos?

cómo obtener datos de los últimos tres años en Spark

¿Cómo obtener los últimos 7 días a partir de ahora usando Moment.js?

Spark: Cómo obtener el último archivo de s3 en los últimos 10 días

Cómo obtener los últimos 10 minutos de registros del host remoto

Cómo obtener los últimos 10 minutos de registros del host remoto

Cómo obtener los últimos 10 minutos de registros del host remoto

Cómo obtener los últimos usuarios: limitado a 10

TOP Lista

CalienteEtiquetas

Archivo