我的程序连接到服务器,该服务器以json格式发送图表的更新。
建立连接后第一次收到的更新包含图表的所有可用点,如下所示:
{"data":[[1484224017,3000],[1484224077,3020],...]}
收到第一次更新后,服务器将每60秒发送一个新的数据点。 json-message的格式是相同的,只是它包含一个值:
{"data":[[1484225012,3018]]}
数据会像这样添加到图表中:
foreach (var entry in json["data"])
{
this.chart1.Series[0].Points.AddXY(this.ConvertFromUnixTimestamp(entry[0].ToObject<double>()), entry[1].ToObject<double>());
}
this.chart1.Refresh();
第一次更新后,图表看起来很好:
但是,在收到第一次更新后,图表会从第一个点到最后一个新添加的点绘制一条线:
为什么会发生这种情况,我该如何解决?
答案 0 :(得分:0)
我遇到了同样的问题。我有一个动态重建系列的图表。点数由Points.AddXY()方法添加。我的解决方案是在重新创建系列之前清除所有系列点。 这样的事情:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="cart-select">
<ul class="list">
<li></li>
<li></li>
<li></li>
<li class="cart-items">
<table>
<tr></tr>
<tr></tr>
</table>
</li>
</ul>
</li>
<li class="cart-select">
<ul class="list">
<li></li>
<li></li>
<li></li>
<li class="cart-items">
<table>
<tr></tr>
<tr></tr>
</table>
</li>
</ul>
</li>
</ul>