2014-01-05 3 views
0

Мои потребности очень похожи на те this question, где ряд записей, как:Как создать мульти-серии столбчатую диаграмму в dc.js в

var data = [ 
// time, text, temperature, count 
['1379952000', 'field_1', 91, 56], 
['1379952000', 'field_2', 50, 20], 
['1379952000', 'field_3', 88, 24], 
['1379952000', 'field_4', 50, 37], 
['1379953200', 'field_1', 97, 58], 
['1379953200', 'field_2', 84, 86], 
['1379953200', 'field_3', 85, 62], 
['1379953200', 'field_4', 88, 73] 
// etc. 
]; 

должны быть нанесены в виде набора времени серии линии, каждая серия, соответствующая каждому уникальному значению поля text (т.е. field_1, field_2 и т. д.). Работая возможная реализация была дана в ответе на этот вопрос here. Тем не менее, мне нужна серия, которая будет построена как баров.

Я понял, я должен проверить, как реализуется dc.js игровой seriesChart класса и попытаться раскошелиться его использовать barChart вместо lineChart в качестве внутренней функции черчения. Вы можете найти the result here. (См. Файл seriesbarchart.js и сравните с the source)

Единственный недостаток моего теста - это ширина одного пикселя, из которого выходят бары. Я новичок в этом веб-мире Javascript/HTML/CSS и тем более о D3 и dc.js. Может ли кто-нибудь знающий дать мне руку с этим? Заранее спасибо.

ответ

1

Вы можете определить xUnits быть временной интервал, например, минут или часов:

time_chart 
.xUnits(d3.time.minutes) 

для ваших данных, однако, вы, вероятно, хотите 15 минутный интервал времени. Для этого потребуется специальный интервал времени.

Вот вопрос, который решает, что: How to define custom time interval in d3.js

+0

Это работало, после того, как добавить строку в источник 'd3.js' для того, чтобы разоблачить класс' d3_time_interval', так что я могла бы определить пользовательская единица времени так же, как и 'd3.time.minute'. У вас был бы менее «хакерский» способ достижения этого? –

+0

Привет Луис, я полагаю, вы могли бы переопределить этот класс самостоятельно. Вы могли бы поделиться своим решением для будущих зрителей этой темы? –

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

  • Нет связанных вопросов^_^