1

想要使用复选框来打开/关闭一些 JQPlot 选项,以打开/关闭已在浏览器中呈现的绘图。

这些选项在一个单独的变量中定义,如下所示:

var options = {
    title: "Options Example",
    dataRenderer: ajaxDataRenderer,
    dataRendererOptions: {
        unusedOptionalUrl: jsonurl
    },
    series: [{
        rendererOptions : {smooth: true},
        showMarker: isShowMarker 
    }]  
};

绘图效果很好,并且在打开/关闭线标记甚至使用 canvasOverlay 绘制的线之间切换都没有问题。但无法打开和关闭线条平滑。

尝试了几种选择:

options.series.renderOptions.smooth = false;
plot1.series.smooth = false;
plot1.series[0].smooth = false;
plot1.series[0].data[0].smooth = false;

...所有上述选项后跟 plot1.replot();。

关于使用复选框更改平滑开/关的命令有什么建议吗?

4

1 回答 1

2

在阅读了很多很多示例之后,我终于找到了适用于所有选项更改的基本解决方案。解决方案来自这个扩展示例

您只需创建一个新的选项变量,包括对选项的更改,然后使用选项变量作为重新绘图中的参数重新绘制图形,如下所示。

对于我的平滑问题:

var options2 = { seriesDefaults: { rendererOptions: { smooth: this.checked } } };       
plot1.replot(options2);        

希望这可以帮助其他需要任何类型的动态选项更改的人。

于 2013-06-10T14:05:41.107 回答