mschart做散点图的问题

seamanli 2007-12-20 05:10:04
需求是这样的:想做一个类似于excel中的xy散点图,然后在加一条趋势线。

目前只是用mschart的控件做了散点图,但效果不是很好。

mschart默认画出的散点图是用线连接起来的,不知道各位有什么好的办法。谢谢啊
...全文
107 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
seamanli 2008-01-02
  • 打赏
  • 举报
回复
已经结贴了,感谢5楼~
seamanli 2007-12-24
  • 打赏
  • 举报
回复
无论如何,十分感谢vbman2003 ,我先去试试你的代码啊。

好银啊~~
vbman2003 2007-12-23
  • 打赏
  • 举报
回复
自己画代码比用控件多,但比较灵活,给你个示例吧:


Option Explicit


'说明:
'比如5个值:66,51,36,17,9
'坐标的大小位置就由输入数据的最大值和个数决定的,可以自己写个函数

Private Sub Form_Load()

Dim i As Integer

Me.Appearance = 0
Me.AutoRedraw = True

'定义坐标
Scale (-1, 80)-(7, -10)
'背景
For i = 0 To 70
Line (0, i)-(6, i), &H8000000F
Next
'画x轴
Line (0, 0)-(6, 0) 'x轴
For i = 0 To 6
Line (i, 0.6)-(i, 0) '刻度线
Me.CurrentX = i - 0.15
Me.CurrentY = -2
Print i '刻度值
Next
'画y轴
Line (0, 0)-(0, 70)
For i = 10 To 70 Step 10
Me.DrawStyle = 2
Line (0, i)-(6, i) '刻度
Me.CurrentX = -0.5
Me.CurrentY = i
Print i '刻度值
Next
End Sub

Private Sub Form_Click()

Dim v As Variant
Dim i As Integer

v = Array(66, 51, 36, 17, 9)
Me.DrawWidth = 4
For i = 0 To UBound(v)
Me.PSet (i + 1, v(i)), vbRed
Next

End Sub



要经常用的话,可以自己写个类,这样用起来就方便了
seamanli 2007-12-22
  • 打赏
  • 举报
回复
楼上的有相关的例子吗?
vbman2003 2007-12-21
  • 打赏
  • 举报
回复
可以不用mschart,直接在窗体或者picture控件上画吧
seamanli 2007-12-21
  • 打赏
  • 举报
回复
楼上的,能提供控件的信息吗?
  • 打赏
  • 举报
回复
mschart是这样的拉,去找找第三方控件吧

7,763

社区成员

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

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