HighCharts - показать все остальные категории X-AXIS
-
02-10-2019 - |
Вопрос
У меня есть HighCharts, чтобы отобразить график с кучей категорий Xaxis. Это все работает нормально, но я хотел бы пропустить некоторые из категорий Xaxis, поэтому не все, что показано. Вы можете увидеть пример этой работы в разделе отчетности монитора кампании (скриншот: http://screencast.com/t/y2fjnzq4y.).
Любая идея, как я могу достичь этой же макета?
Решение
Вы можете установить тип XAXIS в виде «DateTime», затем установите PointInterval и PointStart в PlotoPtions.
Пример кода:
var chart;
$(document).ready(function () {
chart = new Highcharts.Chart({
"xAxis": {
"type": "datetime"
"plotOptions": {
"line": {
"pointInterval": 86400000,
"pointStart": 1282408923000
}
},
});
});
Цифры, которые вы видите для POINTINTERVAL и начать в миллисеционах, которые вы можете генерировать, используя получить время () Интервал в вашем случае будет 86400000 мс, который один день. Библиотека отображает соответствующие интервалы на основе интервала данных.
Другие советы
Похоже, к Xaxis: этикетки: Step Value - это то, что следует использовать для достижения этого:
xAxis: {
categories: ['JAN', 'FEB', 'MAR', 'APR', 'MAY'],
labels:{
step: 2 // this will show every second label
}
},
Супер поздно, но я понял, что это может помочь кому-то.
xAxis: {
categories: categoriesname,
labels: {
style: {
color: '#000',
font: '9px Trebuchet MS, Verdana, sans-serif'
}
},
**tickInterval: TickInterval,**// SET THIS
tickPixelInterval: 80,
tickmarkPlacement: 'on'
},
Вот мое уродливое решение :)
Я использую массив как очередь. http://javascript.about.com/library/blqueue.htm.Если вы заполните точечные данные в очередь, вы можете установить Datas для вашей серии Chart.
var myQueue = new Array();
var myPoint = [x, y]; myQueue.push(myPoint);
chart.series[0].setData(myQueue);
my X axis is not a datetime, it's an integer
first
var x = 0;
x Значение всегда должно всегда увеличиваться, когда вам нужна новая точка.http://dl.dropbox.com/u/3482121/picture/highcharts/pm/screenshot.png.png