Линейная диаграмма Google с различными точками данных - PullRequest
0 голосов
/ 28 февраля 2012

Я пытаюсь нарисовать линейную диаграмму Google, где каждая линия может иметь различное количество точек данных.То есть, если ось X имеет 10 значений, то некоторые линии могут иметь данные только по 4 или 5 или любым другим точкам.Я нашел ответ на этот вопрос здесь:

Как создать Google Chart с линиями (сериями) разной длины?

Это не сработало для меня.Я пробовал как подчеркивание, так и двойное подчеркивание.Также я попытался добавить "и" вокруг подчеркивания (ей). Но когда я открываю HTML, сайт остается простым. Вот мой код:

<html>
  <head>
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load("visualization", "1", {packages:["corechart"]});
      google.setOnLoadCallback(drawChart);
      function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'point');
        data.addColumn('number', 'line1');
        data.addColumn('number', 'line2');
        data.addColumn('number', 'line3');
        data.addColumn('number', 'line4');
        data.addColumn('number', 'line5');
        data.addRows([
          ['0', 5, 6, 10, 8,_],
          ['1', 5, 6, 10, 8, 10]]);
        var options = {
          title: 'Test'
        };

        var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
        chart.draw(data, options);
      }
    </script>
  </head>
  <body>
    <div id="chart_div" style="width: 900px; height: 500px;"></div>
  </body>
</html>

Кто-нибудь знает решение?

1 Ответ

4 голосов
/ 28 февраля 2012

Я думаю, что ответ на этой странице Форматы данных .
Дело в том, что вы не можете использовать _ как в массиве данных, потому что JS будет думать, что это переменная._ - закодированное значение для отсутствующего значения.Таким образом, вы должны преобразовать все ваши данные в закодированную строку, чтобы использовать _ для пропущенных значений.В конце связанной страницы кажется, что у вас есть функции, которые реализуют эту кодировку для вас.

Может быть, вы можете установить свои данные таким образом вместо своего «встроенного» метода, поэтому вам не нужно использовать закодированные значения.

<html>
 <head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
  google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(drawChart);
  function drawChart() {
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'point');
    data.addColumn('number', 'line1');
    data.addColumn('number', 'line2');
    data.addColumn('number', 'line3');
    data.addColumn('number', 'line4');
    data.addColumn('number', 'line5');

    data.addRows(3);
    data.setValue(0, 0, '2004');
    data.setValue(0, 1, 1000);
    data.setValue(0, 2, 400);
    data.setValue(0, 3, 500);
    data.setValue(1, 0, '2005');
    data.setValue(1, 1, 1000);
    data.setValue(1, 2, 400);
    data.setValue(1, 3, 500);
    data.setValue(2, 0, '2006');
    data.setValue(2, 1, 1000);
    data.setValue(2, 2, 400);


    var options = {
      title: 'Test'
    };

    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(data, options);
  }
</script>
</head>
 <body>
<div id="chart_div" style="width: 900px; height: 500px;"></div>
 </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...