Highchart:从 java 传递系列映射时绘制日期时间图表问题

Highchart: Plotting datetime chart issue when passing series map from java

本文关键字:日期 绘制 时间 问题 映射 java 系列 Highchart      更新时间:2023-09-26

我正在尝试在高图表中绘制日期时间图表。我正在从java HashMap传递系列映射并在js中访问它:

var chartRoot = '#{value}'.evalJSON(true);

并将地图串联为:

series : [{color:'#057E7E',
                                data : chartRoot.series[0].y1axis,
                                name:'#{empty y1axistitle ? '' : y1axistitle}',
                                type: 'line',
                                tooltip: {
                                    valuePrefix: ''
                               }
                              },{
                                color:'#FF8230',
                                data : chartRoot.series[0].y2axis,
                                name:'#{empty y2axistitle ? '' : y2axistitle}',
                                type: 'line',
                                tooltip: {
                                    valuePrefix: '$'
                               },
                                yAxis: 1
                                  }]

其中 y1 轴和 y2 轴是哈希图,其中包含 2 y 轴的数据。

我无法像这样绘制图形。我什至将哈希映射的类型更改为,但它不起作用。请帮助我,我是高图的新手。

提前谢谢。

这是您的数据问题。当前您有对象:

{ 
  1325376000000: 1.09, 
  1330560000000: 1.66, 
  1333238400000: 0.55, 
  more...
}

虽然应该有:

[ 
  [1325376000000, 1.09], 
  [1330560000000, 1.66], 
  [1333238400000, 0.55], 
  more...
]

您可以在 JS 中重新格式化它:

var myData = [];
for (var time in chartRoot.series[0].y1axis) {
  myData.push([time, chartRoot.series[0].y1axis[time]]);
}

现在series.data选项中使用myData