24小时热门版块排行榜    

查看: 1425  |  回复: 6

Fanyb_1993

新虫 (初入文坛)

[求助] 我用vb chart 控件,画折线图,出不来,求高人给看看, 已有1人参与

四个点的坐标分别为(0,20)(1,80)(4,200)(10,270),总显示索引越界,我也不知道哪错了,求高人指导,
mydata(1, 1) = 0: mydata(1, 2) = 20
mydata(2, 1) = 1: mydata(2, 2) = 80
mydata(3, 1) = 4: mydata(3, 2) = 200
mydata(4, 1) = 10: mydata(4, 2) = 270
MSChart1.chartType = VtChChartType2dLine
MSChart1.Plot.Axis(VtChAxisIdX).ValueScale.Auto = False
MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Auto = False
MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = temp(i)
MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 20
MSChart1.Plot.Axis(VtChAxisIdX).ValueScale.Minimum = 0
MSChart1.ColumnCount = 4
MSChart1.RowCount = 1
MSChart1.TitleText = "自动控温系统温度显示"
MSChart1.Plot.Axis(VtChAxisIdX, 0).AxisTitle = "时间 / 分钟"
MSChart1.Plot.Axis(VtChAxisIdY, 0).AxisTitle = "温度 / ℃"
For Column = 1 To 4
    For Row = 1 To 2
            MSChart1.Column = Column
            MSChart1.Row = Row
            MSChart1.ChartData = mydata
Next Row
      Next Column
End Sub
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
我把你的程序运行了一下,没有什么问题啊。
我估计是你这一句中出了问题
MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = temp(i)

其中用temp() 数组,估计你的i 值设置有问题,或是没有设置 i 的初值。造成错误。
2楼2014-11-28 21:19:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Fanyb_1993

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by deephill at 2014-11-28 21:19:59
我把你的程序运行了一下,没有什么问题啊。
我估计是你这一句中出了问题
MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = temp(i)

其中用temp() 数组,估计你的i 值设置有问题,或是没有设置 i 的初值。 ...

我的 temp()是个静态数组,这没有问题,我是想知道横坐标为啥不对啊,你没发现横坐标间距都不对吗,

[ 发自小木虫客户端 ]
3楼2014-11-29 00:27:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

【答案】应助回帖

我的程序
Private Sub Command1_Click()

    Dim MyData(10, 10) As Double
    Dim temp(1 To 500) As Double
    '-----x轴坐标值-----Y轴坐标值----------
    For i = 1 To 500
        temp(i) = i
    Next i
    i = 300

    MyData(1, 1) = 0: MyData(1, 2) = 20
    MyData(2, 1) = 1: MyData(2, 2) = 80
    MyData(3, 1) = 4: MyData(3, 2) = 200
    MyData(4, 1) = 10: MyData(4, 2) = 270
    MSChart1.chartType = VtChChartType2dLine

    MSChart1.Plot.Axis(VtChAxisIdX).ValueScale.Auto = False
    MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Auto = False

    MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0
    MSChart1.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = temp(i)

    MSChart1.Plot.Axis(VtChAxisIdX).ValueScale.Minimum = 0
    ''''MSChart1.Plot.Axis(VtChAxisIdX).ValueScale.Maximum = 10

    MSChart1.ColumnCount = 4
    MSChart1.RowCount = 1

    MSChart1.TitleText = "自动控温系统温度显示"
    MSChart1.Plot.Axis(VtChAxisIdX, 0).AxisTitle = "时间 / 分钟"
    MSChart1.Plot.Axis(VtChAxisIdY, 0).AxisTitle = "温度 / ℃"

    MSChart1.ChartData = MyData

End Sub
---------------------------
运行结果如图。

你的这个程序有点意思,特别是最后的那个for循环,要不要都一样。

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : QQ截图20141129162204.png
  • 2014-11-29 16:25:07, 5.79 K
4楼2014-11-29 16:27:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Fanyb_1993

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by deephill at 2014-11-29 16:27:30
我的程序
Private Sub Command1_Click()

    Dim MyData(10, 10) As Double
    Dim temp(1 To 500) As Double
    '-----x轴坐标值-----Y轴坐标值----------
    For i = 1 To 500
        temp(i) = i
  ...

要不要都一样什么意思?
5楼2014-12-01 22:51:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

【答案】应助回帖

是你的程序中最后的 两个for语句  
For Column = 1 To 4
    For Row = 1 To 2
            MSChart1.Column = Column
            MSChart1.Row = Row
            MSChart1.ChartData = mydata
Next Row
      Next Column

你做下比较就知道了。
6楼2014-12-04 00:07:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Fanyb_1993

新虫 (初入文坛)

引用回帖:
5楼: Originally posted by Fanyb_1993 at 2014-12-01 22:51:08
要不要都一样什么意思?...

其实我不知道两个for是什么意思,总会显示
           MSChart1.Column = j
           MSChart1.Row = k    索引越界
再一个问题是,你有没有发现,相邻两个点的横坐标差多少在图上显示出来都是一样的,这有问题啊?
7楼2014-12-07 21:00:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 Fanyb_1993 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 上海工程技术大学激光智能制造课题组|2027级博士研究生招生公告 +4 水士口 2026-09-16 5/250 2026-09-16 10:28 by 庄yh
[考博] 上海工程技术大学激光智能制造课题组招收博士研究生 +8 两三岁ss 2026-09-14 8/400 2026-09-16 09:46 by 水士口
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 Aj1rhIDL5ixY 2026-09-14 4/200 2026-09-16 07:48 by i0IGWqQuchto
[找工作] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-16 05:15 by LH5NkK5Ud4bh
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-16 04:47 by LH5NkK5Ud4bh
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 5/250 2026-09-16 03:59 by DgNGHc3h5tPl
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 6/300 2026-09-16 03:50 by DgNGHc3h5tPl
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 LwdutQ8HoqWP 2026-09-13 4/200 2026-09-16 03:23 by DgNGHc3h5tPl
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 LwdutQ8HoqWP 2026-09-13 5/250 2026-09-16 03:14 by DgNGHc3h5tPl
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +7 3n8v2C8RimXI 2026-09-13 7/350 2026-09-16 02:35 by DgNGHc3h5tPl
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 QUjhNVAcOSff 2026-09-13 6/300 2026-09-16 02:02 by DgNGHc3h5tPl
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 23jxep3nCNZb 2026-09-14 4/200 2026-09-15 18:11 by CgyNCDVNhGVg
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 17:39 by CgyNCDVNhGVg
[博后之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:50 by CgyNCDVNhGVg
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-14 5/250 2026-09-15 16:39 by CgyNCDVNhGVg
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +7 s3fFTmArrBt6 2026-09-14 7/350 2026-09-15 16:23 by CgyNCDVNhGVg
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +6 3n8v2C8RimXI 2026-09-13 7/350 2026-09-15 14:49 by VMDqgnlKimtZ
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 07:58 by C79jjtjAKjEn
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 6F5UbRU2I5hL 2026-09-14 4/200 2026-09-15 07:50 by C79jjtjAKjEn
[考博] 27秋季材料博士申请求助 10+3 Cahal1 2026-09-11 4/200 2026-09-14 08:50 by 北京莱茵编辑
信息提示
请填处理意见