2011-10-12 35 views
1

这个问题太简单了,我无法解决问题。jqPlot .replot()没有更新系列

我有一个jqPlot折线图(“plot1”)与一个系列和一个图例。我已将绑定的.click事件绑定到我的页面上,以调用以下函数:

function changeSeriesColor() { 
    plot1.series[0].color = "#33ff66"; 
    plot1.replot(); 
} 

事件触发并调用该函数时没有错误。 LEGEND上的系列颜色更新为新颜色,但LINE颜色不变。 jqPlot文档没有太多关于这方面的东西(我希望有更多,更多样化的例子),我无法在stackoverflow或其他解决这个问题的任何地方找到任何东西。

这种行为在Chrome 12.0.742.112,Firefox 6.0.2和IE 9.0.8112.16421中是一致的,所以我敢肯定这不是一个奇怪的浏览器特定的怪癖。

我在这一个亏本。帮帮我?!

回答

1

我迟到了,但对于遇到此问题的其他人,这可能有用吗? (从https://bitbucket.org/cleonello/jqplot/issue/358/replot-ignoring-seriescolor

不幸的是,修改剧情选项后积初始化有重制没有 效果/重绘。这不是一个错误。这些选项仅在初始化时用于 以在渲染器上设置属性。绘图初始化后更改 不起作用。

你可以做的是改变rendereres的相关属性。 在你的情况,这将是:

this._jqChart.series[0].renderer.shapeRenderer.strokeStyle = colors[0]; 
    this._jqChart.series[0].markerRenderer.shapeRenderer.strokeStyle = colors[0]; // if markers not filled. 
    this._jqChart.series[0].markerRenderer.shapeRenderer.fillStyle = colors[0]; 
+0

彻底无缘,这个问题得到了解答。感谢您的称重。 –