Я знаю, что это, вероятно, самый худший код, когда-либо написанный, но, пожалуйста, несите меня, я действительно не понимаю, как D3 (пока).Этикетки с осью x не отображаются полностью
Поэтому у меня есть следующий граф https://jsfiddle.net/El4a/sfu07q67/6/
, содержащий много Hacky кода. Мне нужно отображать последние 12 месяцев данных, причем последний отображаемый месяц является текущим месяцем. Итак, в этом случае (это апрель) ось х варьируется от may (2015) до апреля (2016). Как так:
Данные на графике отображает корректно, до сих пор так GOED.
Этикетки, однако, являются настоящей болью. У меня есть они почти хорошие, но по какой-то причине, самый старый (может) и текущий (апрель) месяц не отображаются.
Я своего рода сортировкой названия месяцев в правильном порядке:
var months = ["Jan", "Feb", "Maa", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"];
var x = [];
for (var i = 0; i < timePeriod.length; i++) {
if (timePeriod[i] === 0) {
x.push(months[timePeriod[i]]);
}
else {
x.push(months[timePeriod[i]-1]);
}
};
//result : ["Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec", "Jan", "Feb", "Maa", "Apr"]
А затем пытается вставить их на графике:
var count = 0;
chart.xAxis
.axisLabel('Month')
.tickValues([1,2,3,4,5,6,7,8,9,10,11,12])
.tickFormat(function(d) {
var label = x[count];
count++;
return label;
});
Может кто-нибудь помочь мне?
Кстати, ось x исчезнет после изменения размера страницы (диаграммы), то же самое для вас? –
Да, я заметил, что, по крайней мере, на мой взгляд, пока что ;-) – Ayamei