【发布时间】:2025-12-20 03:05:12
【问题描述】:
我对使用 Highcharts API 还是很陌生,并且刚刚开始使用它的酷炫功能。我有一个 ASP.NET MVC Web 应用程序,它从数据源绘制折线图。在我的应用程序中,用户从列表框中选择一个键值,然后从该键中检索一个值数组并将数据用作图形的系列。
从上面的截图中可以看出,CDT158 系列正确显示了图形,更类似于图 2。但是,图 1 中的系列 2 被压扁,应该像图 2 - SINUSOID 中的那样。
这是我准备和显示图表的函数
var myChart;
function prepareChartData(dataChart)
{
var xAxis = [];
var dataSeries = [];
var xTitle;
for (var i = 0; i < dataChart.length; i++) {
var items = dataChart[i];
var XcategoriesItem = moment(items.Time).format("DD-MMM-YYYY HH:mm:ss");
var seriesData = parseFloat(items.Value);
xAxis.push(XcategoriesItem);
dataSeries.push(seriesData);
xTitle = items.Name;
}
if (myChart == undefined)
{
plotChartData(xAxis, dataSeries, xTitle);
return;
}
myChart.addSeries({
title: xTitle,
data: dataSeries
});
};
function plotChartData(Xaxis, dataseries, xtitle)
{
myChart = new Highcharts.Chart({
chart: {
renderTo: 'svgtrendspace',
type: 'line',
zoomType: 'xy',
panning: true,
panKey: 'shift',
plotBorderWidth: 1
},
title: {
text: 'Sample Chart'
},
legend: {
layout: 'horizontal',
align: 'bottom',
horizontalAlign: 'middle',
borderWidth: 0
},
plotOptions: {
series: {
dataLabels: {
enabled: false,
format: '{y}'
},
allowPointSelect: false
}
},
xAxis: {
type: 'category',
categories: Xaxis,
labels: {
rotation: -65,
style: {
fontSize: '8px',
fontFamily: 'Verdana, sans-serif'
}
},
tickInterval: 60
},
yAxis: {
gridLineColor: '#DDDDDD',
gridLineWidth: 0.5
},
series: [{
name: xtitle,
data: dataseries,
//name: '',
//data: [],
tooltip: {
pointFormat: '{series.name}: <b>{point.y}</b><br/>',
valueDecimals: 2
}
}]
});
};
这是显示图表的 div 元素
<div id="svgtrendspace" style="overflow:auto;display:table-row; height:100%;"></div>
从 AE 控制器检索数据的 jquery post 函数。
$.post("/AE/UpdateTrend", { TrendRequestData: jdata },
function (data) {
if (data.length > 4) {
var results = $.parseJSON(data);
console.log(results);
prepareChartData(results);
trendData = results;
}
else {
trendData = "";
FillNoData("#svgtrendspace");
$('#MinimumHorizontalLine').val("");
$('#MaximumHorizontalLine').val("");
}
});
我的 highcharts 配置中可能出现什么问题导致第二个系列折线图被压扁?
非常感谢任何帮助。
【问题讨论】:
标签: javascript jquery asp.net-mvc highcharts