У меня возникла проблема с получением моих данных, чтобы показать пропуски при отправке данных по оси X. То, что следует рассматривать как пробел в строке, просто объединяется в одну строку, например, в этом img данные идут с 4 утра до 9 утра из-за выхода из интернета, но в строке нет пропусков. Показать X-Axis Gaps - Highstocks
Это код для примера, который у меня есть на данный момент.
$.getJSON('mkjson.php?device=<?echo $device_name;?>&sensor=<?echo $sensor_name;?>&pin=<?echo $pin;?>&user=<?echo $_SESSION['user'];?>', function(data) {
// Create the chart
window.chart = new Highcharts.StockChart({
credits : {
enabled : false
},
chart : {
renderTo : 'container',
zoomType: 'x'
},
rangeSelector : {
selected : 1
},
title : {
text : 'Device:<?echo $device_name;?>'
},
subtitle : {
text : 'Sensor:<?echo $sensor_name;?>'
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: {
second: '%m-%d<br/>%l:%M:%S%p',
minute: '%m-%d<br/>%l:%M%p',
hour: '%m-%d<br/>%l:%M%p',
day: '%m-%d',
week: '%m-%d',
month: '%Y-%m',
year: '%Y'
}
},
yAxis : {
min: <?echo $yaxis_min;?>,
max: <?echo $yaxis_max;?>,
title : {
text : '<?echo $unit?>'
},
<?if(isset($alert1) ||isset ($alert2)){?>
plotLines: [{
color: '#FF0000',
width: 1,
value: <?echo $alert1;?>
}, {
color: '#FF0000',
width: 1,
value: <?echo $alert2;?>
}]
<?}?>
},
rangeSelector : {
buttons : [{
type : 'minute',
count : 10,
text : '10m'
}, {
type : 'hour',
count : 1,
text : '1H'
},
{
type : 'day',
count : 1,
text : '1D'
},
{
type : 'day',
count : 3,
text : '3D'
}],
selected : 3,
inputEnabled : false
},
series : [{
name : '<?echo $unit;?>',
data : data,
tooltip: {
valueDecimals: 2,
formatter: function() {
return Highcharts.numberFormat(this.y, 2);
}},
dataGrouping: {
enabled: true
}
}]
});
});
Кроме того, это пример из highstocks в jsfiddle, что я пытаюсь использовать, чтобы увидеть, как они были в состоянии выполнить это.
Так что это невозможно сделать динамически, потянув данные из sql? – user1707616
Я не уверен, что не так в моем примере, чтобы вытащить из базы данных. Проблема в том, что, как Highcharts должны знать, что должен быть пробел? Если вы знаете, когда должен появиться разрыв, добавьте этот пробел вручную. –
Я думаю, что ОП задает вопрос о том, могут ли Highcharts автоматически обнаруживать пробелы вдоль оси x. Я лично не понимаю, почему нет. Если интервал установлен на один день, например, и не хватает двух дней в серии, почему он не может автоматически заполнить эти дни и установить значение оси y равным нулю или нулю для этих пробелов. Если он не может сделать это автоматически, значит, нам нужно сделать много работы на стороне сервера, чтобы заполнить пробелы. У меня лично возникают проблемы с этой частью. Может ли кто-нибудь дать советы о том, как заполнить пробелы либо на сервере, либо на клиенте? – Aquarelle