2015-06-05 2 views
0

Я хотел бы нарисовать временной ряд как гистограмму (я полагаю, это также называется диаграммой столбцов), сохраняя масштаб временной линии. Пример: enter image description hereБиблиотека Javascript для рисования гистограмм с временной шкалой

Не могли бы вы порекомендовать библиотеку javascript, предоставляющую код, как визуализировать его? Я хорошо знаю об этом answer и пробовал некоторые из них, но не мог приблизиться к желаемому результату.

Пример данных в JavaScript формате:

var arr = new Array(); 
arr[0] = -100; 
arr[3.5] = 10; 
arr[5] = 110; 
+0

Вы посмотрели на d3? –

+0

Да, но не смог найти способ. Кроме того, у многих библиотек есть возможность рисовать гистограмму с ярлыками, которые оставляют временную шкалу немасштабированной. –

+0

Highcharts - лучшая библиотека – shreyansh

ответ

1

Посмотрите на этот код, вы можете заменить categories(in x-axis) и data с вашими собственными массивами.

<html> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
<script src="http://code.highcharts.com/highcharts.js"></script> 

</head> 
<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"> 

</div> 
<script> 
$(function() { 
    $('#container').highcharts({ 
     chart: { 
      type: 'column' 
     }, 
     title: { 
      text: 'Column chart with negative values' 
     }, 
     credits: { 
      enabled: false 
     }, 
     series: [{ 
     name: 'Bar Chart', 
     data: [ 

    { x: 0, y: -100 }, 
    { x: 4.9, y: 10}, 
    { x: 5, y: 100 } 
    ] 

    }] 
    }); 
}); 
</script> 
</html> 
+0

посмотрите, в вашем примере расстояние между столбцами -100 и 10 будет таким же, как между 10 и 110. Они ДОЛЖНЫ отличаются, т.е. 1-е расстояние должно относиться к 2-м как 3.5: 1.5 (по крайней мере, оптически). Вы можете изменить время с 3,5 до 4,99, чтобы увидеть проблему более четко. –

+0

Я сейчас редактировал код – shreyansh

+0

thx, это заставляет это случиться –

0

Взгляните на Highcharts его очень настраиваемым. Взгляните на эту fiddle, просто изменил тип на column

+0

вот в чем проблема. Вы можете поместить эквидистантные метки на ось X. Проблема заключается в том, как поместить числовые данные по оси X так, чтобы столбцы имели расстояние между ними в соответствии с ними. –

Смежные вопросы