C#怎么绘制动态曲线图?

就像股票走势一样的?动态变的!!!知道的告诉下,谢谢!!!
2024-12-21 19:52:01
推荐回答(3个)
回答1:

下面的说明是假设你会GDI绘图:1、要分析出曲线的函数公式,就比如y = sin(x)这种。2、然后因为GDI并没有绘制任意二维函数的功能,而曲线本身实质上是有很多线段构成的,因此你要决定一个线段水平间距阀值,如float j = 0.3f;3、根据函数,每带入一个x,可以得到相应的y值, 从需要的i = (x最小值)一直到i = (x的最大值),进行循环,每次i+=j,循环内部就调用函数,获取f(x)和f(x+ j)的2个值,利用这2个值,得到2个端点PointF pt1 = new PointF(x,f(x)),PointF pt2= new PointF(x + j,f(x + j)),利用GDI绘制线段。 总结:绘制曲线就是利用阀值对曲线进行拆分,分为一段段细小的线段,然后用GDI的方法绘制这些线段,动态或者不动态并不重要,关键是更新这个曲线函数本身,可以还是用老办法去画,只是擦了重画而已。

回答2:

下面的说明是假设会GDI绘图:
1、要分析出曲线的函数公式,就比如y = sin(x)这种。
2、然后因为GDI并没有绘制任意二维函数的功能,而曲线本身实质上是有很多线段构成的,因此你要决定一个线段水平间距阀值,如float j = 0.3f;3、根据函数,每带入一个x,可以得到相应的y值, 从需要的i = (x最小值)一直到i = (x的最大值),进行循环,每次i+=j,循环内部就调用函数,获取f(x)和f(x+ j)的2个值,利用这2个值,得到2个端点PointF pt1 = new PointF(x,f(x)),PointF pt2= new PointF(x + j,f(x + j)),利用GDI绘制线段。

总结:绘制曲线就是利用阀值对曲线进行拆分,分为一段段细小的线段,然后用GDI的方法绘制这些线段,动态或者不动态并不重要,关键是更新这个曲线函数本身,可以还是用老办法去画,只是擦了重画而已。

回答3:

绘了擦除,然后再绘,就能形成动画效果了,具体的效果怎么样,就要看你自己的控制代码了,但原理都是这样