tchart中画曲线的一点问题(40分)

  • 主题发起人 主题发起人 liuyj
  • 开始时间 开始时间
L

liuyj

Unregistered / Unconfirmed
GUEST, unregistred user!
在tchart中画线,我采用坐标自动变换,当有两条曲线时,并且两曲线的数值
没有变化时,则两条曲线就会顶天立地,看不到了,请问各位,是否有什么
好的办法能使我在画线时有一定的冗余量,不论什么情况下都能看到自己的曲线?
谢谢各位!
 
我也有类似问题.跟.
 
CJ: 给你打个比方,我的情况和liuyj可能不完全一样,我是自己画图表,不用Chart.

比如我要画柱型图,还要画上坐标,坐标的最大值,最小值要动态确定,因为数据
是动态取的一段时期的数据,这段数据的range可能相差很大,如果把坐标的最大
值,最小值固定,可能图形会很别扭.
那么,假设我取的这段数据max=10,min=1,如果我设坐标max=10,min=1,当然
能够比较合理的显示出这段数据,但最大的那个柱顶到了头,最小的那个柱顶到
了底,总有点那个...我希望上下都能有一定的空白,图形集中到中间部分.
当然,我可以设定一个常量来调节,比如1吧! 我将坐标max=10+1,min=1-1,这样
可以解决当数据range在1到10的情况,但如果数据的range在0.1到0.5之间呢?
肯定这个常量不适用了...而我的数据的range是非常不固定的,什么可能都有.

那么我如何确定这个调节用的常量呢? ---- 当然,它肯定应该是个变量.
 
可以这样:-)
CONST CSPACER integer :=10;
query, max(field), min(field)赋值给imax,imin
然后max=imax+(imax-imin)/CSPACER;
min=imin-(imax-imin)/CSPACER;
cspacer就是这个量, 可以随时改变:-)

 
上面的方法可以用,但我要同时画几条曲线(1-5条不等),如果按照上面的方法,
那么,每次更新曲线时,都要重新判断最大、最小值,是不是感到不太方便,还有
没有别的方法呢?
 
cytown的方法有道理,应该可以解决我的问题.

to liuyj: 这样的变量当然要根据目前的数据range动态改变了,难道你想用一个
常量吗?
 
没有其它省事方法:-(
 
这种现象我也遇到过,解决方法如下:
在 CHART 的 GENERAL 属性中有一项“CLIP POINTER”,
不选择即可。
 
多人接受答案了。
 
后退
顶部