日期:2014-05-20  浏览次数:20752 次

100分求解 c# chart控件的问题

使用chart控件来描绘一个时间段的数据曲线。现在遇到一个问题,比如软件在2012年2月21号的08:00:00到11:00:00,这段时间内接收到数据(数据时连贯的),然后数据已经停止了;在2012年2月22号的08:00:00又开始接收到数据,。。。;现在问题出来了,2月21号11:00:00 过后没有数据,直到2月22号08:00:00 才有数据,那么画出来的曲线中2月21号11:00:00到2月22号08:00:00这段时间应该是不包含数据,曲线也不需要画出来。但实际上chart控件是直接连接起来的,请问该如何将这段没有数据的曲线清除掉,或者是不是在绘制过程中就应该去除。
如下图
想实现的是

实际情况却是



------解决方案--------------------
画两条不同颜色的行不行

------解决方案--------------------
我以前做过这样的图,也是要跳过周末,找半天没有简便的方法,最后的解决办法就是不用自带的那个DateTime横轴,自己定义坐标系,自己画X Axis,虽然麻烦点但只能这样了
------解决方案--------------------
你是怎么绑定的 如果是循环绑定的 可以判断下 当前数据和上一数据的时间是否连贯 如果不连贯,就手动的空出一部分位置 或者补0值 直到有新的数据为止
------解决方案--------------------
探讨

引用:
引用:

引用:
哦,你这个和我的情况还不一样,那就多画几条线吧,简单
能说说你遇到的是什么情况吗,说不定可以做个参考


就像股票周末停盘那段时间就不应该画出来一样,我那个也是y轴值在周末那段时间是不变的,完全可以从x坐标轴上把周末去掉,而且去掉……

------解决方案--------------------
http://support.microsoft.com/kb/177685/zh-cn
看看这个是否跟你的情况一样?
------解决方案--------------------
我觉得是要2N条,不过颜色可以就用1种
探讨

引用:
画两条不同颜色的行不行
具体情况是这只是其中某一个的历史记录,还有很多和这个类似的都要画出来,如果一个就画两条,那N个就得画2N条 。。。。

------解决方案--------------------
试过List<double?> data = new List<double?>();没有呢?插入一个null值。
------解决方案--------------------
设置series.EmptyPointStyle属性
空值赋double.NaN
------解决方案--------------------
探讨

引用:
你是怎么绑定的 如果是循环绑定的 可以判断下 当前数据和上一数据的时间是否连贯 如果不连贯,就手动的空出一部分位置 或者补0值 直到有新的数据为止
谢谢,和我想的差不多,只是现在有个问题,datatable不知道能不能在指定第几行后插入行数据,下面的数据往下推