假设你有一张带有图片所示系列的折线图。当您使用EnhancedLegendRenderer打开和关闭系列时,系列会在隐藏和可见之间切换。这就是应该如何。但事实上,我希望系列保持可见的比例,以便具有最高y值的系列将位于图表的顶部,同时调整y轴上的值。下图显示了当我将具有最高值的系列切换为隐藏时的外观。
这样做有简单或先进的方法吗?我试图从图表中完全删除系列,从数据中删除它,并创建一个新的jqplot。但那时它在传奇中也不可见。还尝试了使用chart.series [i] .show = false的不同方法; chart.replot();等,但结果相同。
Plot image http://i45.tinypic.com/52mn8m.png Plot image http://i48.tinypic.com/vp9ker.png
答案 0 :(得分:5)
还有一个可以使用的无证件的renderOption也可以这样做:
seriesToggleReplot: { resetAxes: true }
所以我的传奇看起来像这样:
legend: {
show: true,
renderer: $.jqplot.EnhancedLegendRenderer,
rendererOptions:{
seriesToggleReplot: { resetAxes: true }
},
placement: 'outside'
}
答案 1 :(得分:0)
没有为此找到任何真正的内置解决方案,所以我创建了自己的解决方案。
通过将所选系列的每个y值从图例设置为“0”,再设置为chart.replot(),图表将重新绘制剩余的系列值。
var j = //index of chosen serie.
for(var i = 0;i < chart.series[j].data.length ;i++)
{
chart.series[j].data[i][1] = 0
//1 is the index of the y-value.
}