Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("表A") '定义一个变量t引用数据表
Dim r,ymax,y As Integer
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar '图表类型改为Bar(条形)
Chart.SeriesList.Clear() '清除图表原来的图系
For Each c As Col In t.Cols
If c.Name <> "产品号" Then
y = 0
Series = Chart.SeriesList.Add() '增加一个图系
Series.Text = c.Name '设置图系的标题
Series.Length = t.Rows.Count '设置图系的长度
For r = 0 To t.Rows.Count - 1
y = y + t.Rows(r)(c.Name)
If c.name.StartsWith("计划") Then
Series.X(r) = 2*r
Else
Series.X(r) = 2*r + 0.5
End If
Series.Y(r) = t.Rows(r)(c.Name)
Chart.AxisX.SetValueLabel(2*r + 0.25, t.Rows(r)("产品号")) '指定字符表示
Next
If y > ymax Then
ymax = y
End If
End If
Next
chart.AxisY.Max = ymax
Chart.AxisX.AnnoWithLabels = True '启用字符标示
'Chart.VisualEffect = True '加上这一行,让你的图表更漂亮 --实际更不好看
Chart.LegendVisible = True '显示图列
Chart.LegendCompass = CompassEnum.South '图列显示在南方(底端)
Chart.Stacked = True