如何重绘 RGraph SVG 线图?

How do I redraw an RGraph SVG line plot?

我在微控制器上嵌入了一个简单的网络服务器。其中一个网页允许用户绘制捕获的数据(CSV 格式)。该页面首先加载所有数据并将其呈现给用户,但随后我想让用户执行 select 和 deselect 数据(列)、更改线条颜色和更改数据等操作秤。当我第二次天真地调用 RGraph.SVG.Line 时,它只是在已经存在的图像之上重新绘制修改后的图表。如何让 RGraph 删除之前的图像并重新开始?

我已经尝试了以下(分别):

RGraph.Clear(document.getElementById("plotDiv"));
RGraph.ObjectRegistry.Clear();
document.getElementById("plotDiv").innerHTML="";

"RGraph.Clear" 和 "Graph.ObjectRegistry.Clear" 在库的 SVG 版本中似乎不可用。当我删除 div 的 "innerHTML" 时,div 被清除,但是 RGraph.SVG.Line 再次调用时根本不绘制任何东西。

还有什么我可以尝试的吗?

您应该为 SVG 调用清除函数 - 而不是 canvas 版本:

RGraph.SVG.clear(myChart.svg);

要清除注册表(您可能还需要这样做):

RGraph.SVG.OR.objects = [];

然后您应该能够在 SVG 标签上绘制新图表。