数字太长,无法在highcharts/javascript中正确显示
我有一个奇怪的问题:数字太长,无法在highcharts/javascript中正确显示,javascript,flask,highcharts,Javascript,Flask,Highcharts,我有一个奇怪的问题: series1变量是一个日期时间数组,太长。因此,图表无法正确显示。但是,如果我更改系列1,使其包含系列2的值。它将正常工作。你能告诉我该怎么做吗 另外,如何使series1中的每个值显示为日期?假设它是flask{{series1}中的一个变量。多谢各位 $(function () { var series1 = [1489298400000L, 1492923600000L, 1492318800000L, 1480226400000L, 1
series1
变量是一个日期时间数组,太长。因此,图表无法正确显示。但是,如果我更改系列1
,使其包含系列2
的值。它将正常工作。你能告诉我该怎么做吗
另外,如何使series1
中的每个值显示为日期?假设它是flask{{series1}
中的一个变量。多谢各位
$(function () {
var series1 = [1489298400000L, 1492923600000L, 1492318800000L, 1480226400000L, 1494133200000L, 1490504400000L, 1488088800000L, 1475384400000L, 1493528400000L, 1491109200000L, 1480831200000L, 1471755600000L]
var series2 = [1, 7, 2, 1, 4, 1, 1, 1, 4, 6, 1, 1]
var series3 = [102, 95, 110, 111, 81, 104, 99, 92, 90, 100, 103, 98]
var myChart =
Highcharts.chart('container', {
chart: {
zoomType: 'xy'
},
title: {
text: 'Average Monthly Temperature and Rainfall in Tokyo'
},
credits: {
text: 'Songhuiming',
href: 'http://www.songhuiming.com'
},
subtitle: {
text: 'Source: WorldClimate.com'
},
xAxis: [{
categories: series1,
crosshair: true
}],
yAxis: [{ // Primary yAxis
labels: {
format: '{value}°C',
style: {
color: Highcharts.getOptions().colors[1]
}
},
title: {
text: 'Temperature',
style: {
color: Highcharts.getOptions().colors[1]
}
}
}, { // Secondary yAxis
title: {
text: 'Rainfall',
style: {
color: Highcharts.getOptions().colors[0]
}
},
labels: {
format: '{value} mm',
style: {
color: Highcharts.getOptions().colors[0]
}
},
opposite: true
}],
tooltip: {
shared: true
},
legend: {
layout: 'vertical',
align: 'left',
x: 120,
verticalAlign: 'top',
y: 100,
floating: true,
backgroundColor: (Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'
},
series: [{
name: 'Rainfall',
type: 'column',
yAxis: 1,
data: series2,
tooltip: {
valueSuffix: ' mm'
}
}, {
name: 'Temperature',
type: 'spline',
data: series3,
tooltip: {
valueSuffix: '°C'
}
}]
});
});
关于后缀“L”的结尾你可以阅读
首先,您需要将系列1数组中的所有项设置为字符串,因为现在,您将有一个错误。然后删除“L”并转换为日期
let series = ['1489298400000L', '1492923600000L', '1492318800000L', '1480226400000L', '1494133200000L', '1490504400000L', '1488088800000L', '1475384400000L', '1493528400000L', '1491109200000L', '1480831200000L', '1471755600000L'];
let series1 = series.map((item) => {
let date = new Date(parseInt(item.replace("L", ""))));
return `${date.getMonth()} ${date.getFullYear()}`;
});
您希望输出图表的外观如何?