以图表形式显示不平衡月份的月环比



我需要将本月与上月进行比较。我遇到了麻烦,因为月份的持续时间不均衡。对于本月的每一天,我想显示上个月同一天的值(1月1日=2月1日(,反之亦然(1月31日=月底,又名2月29日(

例如:2020年1月我想显示31天

2020年2月,我想显示29天,但即使2月的这些日期不存在,也要保持线路不变。

所以工具提示应该是这样的:

  • 29.02.2020=上月值(29.01(,本月值(29.02(
  • 2020年2月30日=应显示为"第30个值"或类似的smth;上月值(30.01(,本月值(29.02(
  • 2020年2月31日=应显示为"第31个值"或类似的smth;上月值(31.01(,本月值(29.02(

var test_data_last_month=[[日期UTC(2020,0,1(,0],[日期UTC(2020,0,0,2(,155752],[日期.UTC(2020,0,3(,245224],[时间UTC(202,0,4(,313143],[日间UTC(2020,1,5(,454540],[地点UTC(2020,6,6(,715791],[地区UTC(2021,7,7(,71579],[区域UTC(2027,8(,715792],[地方UTC(2028,9(,988 655],[日期。UTC(2020,0,10(,1026435],[日期:UTC(202,0,11(,1332754],[日期.UTC(2020,12(,1567388],[日期.UTC(2020,0,13(,1940597],[日期.协调世界时(2020,0,14(,194597],[日期.UTC(202,0,15(,1942057],[时间.协调世界时间(2020,0,16(,2081828],[日期.TUTC(2020,17(,2213635],[日期.UTC(2020,0,0,18(,2255751],[日期.ITC(2020,19(,2395119],[日期.OTC(202,0,20(,2876209],[2020,0,22(,2876209],[日期UTC(2020,0,23(,2988469],[时间UTC(202,0,24(,3201548],[日期UTC(2020,02,25(,3260514],[日期.UTC(2020,0,26(,3581301],[日期.UCC(2020,0.27(,3817162],[日期-UTC(202,0,28

var test_data_this_month=[[Date.UTC(2020,1,1(,76095],[Date.UCC(2020,1,2,[日期UTC(2020,1,10(,805063],[日期UTC(2020,11,11(,80506.3],[时间UTC(2020,12,12(,8050.63],[日UTC(2020.1,13(,1043119],[日期.协调世界时(2020,1,14(,1311065],[日期.联合世界时(2020 0,1,15(,1400422],[日期.UTC(2020,10,16(,1778001],[时间.协调世界时间(2020,1,17(,2084701],[日期.ITC(2020,1,18(,208470 1],[时间.UTC(2020 0,1,19(,2084700 1],[日.UTC(2022 0,1,20(,2139867],[日期-UTC(2020,1,21(,2501355],[时间.ITC(2020,1,22(,2546408],[日期/UTC(2020 0,1,23(,0],[日期.UTC(2020,1,24(,0]、[日期.UTC(2020,1,25(,0]和[日期,[Date.UTC(2020,1,28(,0],[Date.UCT(2020,1.29(,0]]

相隔两个月两个月在同一图表

我一直为这个问题而抓狂。任何帮助都会被告知。

您可以将x设置为递增1的连续值(默认行为(,并将日期存储为自定义属性。要以所需方式在工具提示中显示值,请使用tooltip.formatter函数:

tooltip: {
shared: true,
formatter: function() {
var points = this.points,
series = points[0].series.chart.series,
point,
i = 0,
str = '';
for (; i < series.length; i++) {
if (points[i]) {
point = points[i].point;
} else {
point = series[i].points[series[i].points.length - 1];
}
str += '<span style="color:' + point.color + '">●</span> ' +
point.series.name + ' - ' + Highcharts.dateFormat('%e. %b', point.customDate) +
': <b>' + point.y + '</b><br/>'
}
return str;
}
},
xAxis: {
tickPositions: [1, 11, 21, 31]
},
plotOptions: {
series: {
keys: ['customDate', 'y'],
pointStart: 1
}
},

现场演示:http://jsfiddle.net/BlackLabel/6m4e8x0y/4986/

API参考:

https://api.highcharts.com/highcharts/tooltip.formatter

https://api.highcharts.com/highcharts/plotOptions.series.pointStart

https://api.highcharts.com/highcharts/plotOptions.series.keys

最新更新