VB Mschart画散点图

xuehan1108 2009-08-30 08:46:27
采用Mschart画散点图时,如何去除两点之间的连接线,实现Excel散点图的效果。
如何通过鼠标选择曲线的一部分,获得这部分的坐标,然后改变坐标值,实现放大。
当数据很多时,屏幕无法显示完整个数据所会之后的图,想通过加滚动条实现,怎样给MSchart加上滚动条?
...全文
935 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
samtyty 2009-08-31
  • 打赏
  • 举报
回复
学习,帮顶
chinaboyzyq 2009-08-31
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xuehan1108 的回复:]
猴哥,那选择局部放大呢?怎样使用鼠标选择一个矩形区域,怎样获得坐标?
[/Quote]
这个没弄过,不过我想这样做比较容易:也就整体放大,把鼠标画框的部分放大到frame1的整个框的大小,反正出去的也看不见。

应该在mousemove 或mousedown事件里做吧,可以利用x,y的坐标值,来判断在什么位置画了框,以便移动mschart的位置。
Private Sub MSChart1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

End Sub

Private Sub MSChart1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

End Sub
选择时的虚线怎么弄出来,我还不知道,实线的矩形框选择的,可考虑line画box

以上建议,仅供参考
xuehan1108 2009-08-31
  • 打赏
  • 举报
回复
我发现Mschart画图的时候,只显示定义坐标内的曲线啊,比如我定义的坐标如下
.Plot.Axis(VtChAxisIdX).ValueScale.Maximum = 360
.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = 300
我想通过滚动条看X为720的曲线,好像实现不了,始终只显示到360,如果我把坐标最大值改为720,那么曲线之间的距离很小了,滚动条也没有用啊?我是想保持曲线之间的距离,通过滚动条拉看360以后的曲线。
xuehan1108 2009-08-31
  • 打赏
  • 举报
回复
猴哥,那选择局部放大呢?怎样使用鼠标选择一个矩形区域,怎样获得坐标?
chinaboyzyq 2009-08-31
  • 打赏
  • 举报
回复
1、添加Frame1到窗体做Mschart和垂直以及水平滚动条的容器。
2、在frame1上分别拖画出Mschart和两个滚动条,当然可以先添加到窗体再剪切,粘贴到frame1上,做好后无论Mschart或垂直以及水平滚动条,都不会被拖动出frame1,而且在运行前你拖动frame1,其它三个控件也会一起移动。
3、缩放放后,根据放大或缩小后的大小,设置MSchart的位置,及相应滚动条的最大滚值,就可以达到你的要求了,你把mschart放多大都行(别放大到出错就行),它都不会出frame1框。
4、运行后放大或缩小测试调整滚动条的各个值。

好运~~~~~~~~
xuehan1108 2009-08-30
  • 打赏
  • 举报
回复
能详细点说明吗?
贝隆 2009-08-30
  • 打赏
  • 举报
回复
录制宏

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧