以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  图表下方X轴显示的文字问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=121470)

--  作者:happyft
--  发布时间:2018/7/6 18:06:00
--  图表下方X轴显示的文字问题

图片点击可在新窗口打开查看此主题相关图片如下:图表3.jpg
图片点击可在新窗口打开查看


如上图,在图表生成的按钮中用了下面这名代码生成2018-6这样的表示
Chart.AxisX.SetValueLabel(i,Ary(0) & "-" & Ary(1)) \'指定字符表示

但每点击一次时下面的文字就变得重影了,如何在每次生成图表时都先清掉,
Chart.SeriesList.Clear() \'清除图表原来的图系

感觉这句没起作用,

谢谢!

--  作者:有点甜
--  发布时间:2018/7/6 18:20:00
--  
清除的时候加上 Chart.Axisx.ClearValueLabel
--  作者:HappyFt
--  发布时间:2018/7/6 19:48:00
--  
另外想请教一个双图表的问题,
图表1没有问题,然后在后面加了图表2
Dim Series2 As WinForm.ChartSeries \'定义一个图系变量
Chart.SeriesList2.Clear() \'清除图表原来的图系
Series2 = Chart.SeriesList2.Add() \'增加图系2
Chart.AxisY2.Text = "金额"
Chart.AxisY2.Min = 0 \'指定Y轴的最小值
Chart.AxisY2.Max = 60000 \'指定Y轴的最大值
Series2.LineColor = Color.Blue \'连接线的颜色
Series2.LineThickNess = 0.5 \'连接的粗细
Series2.MarkShape = MarkShapeEnum.Dot  \'数据点的形状
Series2.MarkColor = Color.Green \'数据点的颜色
Series2.MarkSize = 3  \'标记点大小

For i As Integer = 2 To Xi+1 \'逐个年月设置坐标
    Series.X(i) = i     \'指定水平坐标

    Series2.X(i) = i     \'指定水平坐标
    
    Dim Ary As String() = Arys(i-2)
    Dim r As DataRow = DataTables(tbn).Find("供应商 = \'" & Tables(tbn2).Current("供应商") & "\' and 年 = " & Ary(0) & " and 月 = " & Ary(1))    \'找出对应年月的行
    If r IsNot Nothing \'如果找到对应年月的行
        Series.Y(i) = r("数量") \'指定数量作为垂直坐标
        Chart.AxisX.SetValueLabel(i,Ary(0) & "-" & Ary(1)) \'指定字符表示

        Series2.Y2(i) = r("金额") \'指定数量作为垂直坐标
    Else
        Series.Y(i) = 0

        Series2.Y2(i) = 0
    End If
Next

出错提示:指定的参数已超出有效值的范围

上面金额与数量是同样的逻辑,红色的三处应该怎么写?
谢谢!


--  作者:有点蓝
--  发布时间:2018/7/6 21:02:00
--  
Series2.Length指定一下长度

最好是给个例子看看

--  作者:HappyFt
--  发布时间:2018/7/6 23:13:00
--  
确实如老师所说,没有指定长度。

图片点击可在新窗口打开查看此主题相关图片如下:图表4.jpg
图片点击可在新窗口打开查看

另外一个问题,如上图,用了双图系后同时用两个条形图但重叠在一起了,如何让金额的条形图刚好靠在数量的右侧

谢谢!

--  作者:有点蓝
--  发布时间:2018/7/7 8:53:00
--  
Chart.BarClusterWidth2 = 80设置一下第二个图的宽度
--  作者:HappyFt
--  发布时间:2018/7/7 21:11:00
--  
这样是可以实现,但两个不同的宽度,看起来怪怪的,有没有办法设置第二个图系的绘制起始点偏离0.5这样,我现在想用又倍的刻度来错开显示,但那样点数在变化间隔很控制好,还是觉得两个靠在一起比较好些
--  作者:HappyFt
--  发布时间:2018/7/9 9:02:00
--  
帮忙看下7楼的方式是否可行,谢谢!
--  作者:HappyFt
--  发布时间:2018/7/9 9:48:00
--  
顶上去
--  作者:有点甜
--  发布时间:2018/7/9 9:55:00
--  

第二个图系设置的时候,控制好其x轴的坐标,不就好了?

 

比如第一个图系使用 1、3、5 的点,第二个使用 2、4、6 的点。