我正在使用jqplot.cs并使用像这样的数组中的数组初始化其数据点
var line1 = [[' 2008-08-12 4:00 PM',4],[' 2008-09-12 4:00 PM',6.5],[&# 39; 2008-10-12 4:00 PM',5.7],[' 2008-11-12 4:00 PM',9],[' 2008-12-12 4:00 PM& #39;,8.2]];
但我动态获取数据点,那么如何动态创建line1数组?
我以为我可以构建一个字符串,然后将其发送到数组中,如下所示,但是没有用。
for (var i = 0; i < gvWellSamples.Rows.length; i++) {
sample_date = gvWellSamples.Rows[i].Cells['sample_date'].Value;
water_elevation = gvWellSamples.Rows[i].Cells['water_elevation'].Value;
datapoints= datapoints + "['" + sample_date + "'," + water_elevation + "],";
}
datapoints = datapoints.substring(0, datapoints.length - 1);
var plot1 = $.jqplot('chartdiv', [datapoints], {
title: 'Default Date Axis',
axes: {
xaxis: {
renderer: $.jqplot.DateAxisRenderer
}
},
series: [{ lineWidth: 4, markerOptions: { style: 'square' } }]
});
答案 0 :(得分:0)
您正在构建key(var2)
作为字符串,而它应该是一个数组(就像您在line1中给出的示例一样)
所以它应该构造成这样的东西:
datapoints
此外,如果您真的需要在使用var datapoints = [];
for (var i = 0; i < gvWellSamples.Rows.length; i++) {
//assuming this gives you correct date
sample_date = gvWellSamples.Rows[i].Cells['sample_date'].Value;
//assuming this gives you correct value
water_elevation = vWellSamples.Rows[i].Cells['water_elevation'].Value;
datapoints.push([sample_date, water_elevation]);
}
绘制图表数据后动态更新图表数据,则必须使用$.jqplot(...
将其销毁,然后再次使用plot1.destroy()
重新绘制(可以换行)在一个功能中)