以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  双图表问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=159379)

--  作者:季朝龙
--  发布时间:2020/12/24 10:39:00
--  双图表问题

图片点击可在新窗口打开查看此主题相关图片如下:02.png
图片点击可在新窗口打开查看
1、出现“未将对象引用设置到对象的实例”,的错误提示;
2、图表只有柱形图没有折线图。
代码如下:
Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Dim Series1 As WinForm.ChartSeries \'定义一个图系变量
Dim t As Table = Tables("产品明细.产品明细2") \'定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar \'设置图表类型 
Chart.ChartType2 = ChartTypeEnum.XYPlot \'图表2类型该为线形
Chart.AxisY.Min = t.Compute("Min(作业人数)") - 5  \'指定Y轴的最小值
Chart.AxisY.Max = t.Compute("Max(作业人数)") + 5  \'指定Y轴的最大值
Chart.SeriesList.Clear() \'清除图表原来的图系
Series = Chart.SeriesList.Add() \'增加一个图系
Series.Text = "人数"
Series.Length = t.Rows.Count \'设置图系的长度
For i As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置
    Series.X(i) = i \'指定水平坐标
    Series.Y(i) = t.Rows(i)("作业人数") \'指定垂直坐标
    Chart.AxisX.SetValueLabel(i, t.Rows(i)("版本号")) \'指定字符表示
Next
Chart.AxisX.AnnoWithLabels = True \'启用字符标示 

Chart.AxisY2.Min = t.Compute("Min(时产能)") - 5  \'指定Y轴的最小值
Chart.AxisY2.Max = t.Compute("Max(时产能)") + 5  \'指定Y轴的最大值
Chart.SeriesList2.Clear() \'清除图表原来的图系
Series1 = Chart.SeriesList2.Add() \'给图表2增加一个图系
Series1.Text = "时产能"
For i1 As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置
    Series1.X(i1) = i1 \'指定水平坐标
    Series1.Y(i1) = t.Rows(i1)("时产能") \'指定垂直坐标
    Chart.AxisX.SetValueLabel(i1, t.Rows(i1)("版本号")) \'指定字符表示
Next
Chart.AxisX.AnnoWithLabels = True \'启用字符标示

Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Chart.AxisY.Text = "人数"
Chart.AxisY2.Text = "时产能"
图片点击可在新窗口打开查看此主题相关图片如下:01.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2020/12/24 10:50:00
--  
Chart.AxisY2.Min = t.Compute("Min(时产能)") - 5  \'指定Y轴的最小值
Chart.AxisY2.Max = t.Compute("Max(时产能)") + 5  \'指定Y轴的最大值
Chart.SeriesList2.Clear() \'清除图表原来的图系
Series1 = Chart.SeriesList2.Add() \'给图表2增加一个图系
Series1.Text = "时产能"
Series1.Length = t.Rows.Count \'设置图系的长度
For i1 As Integer = 0 To t.Rows.Count - 1 \'指定每个数据点的位置
    Series1.X(i1) = i1 \'指定水平坐标
    Series1.Y(i1) = t.Rows(i1)("时产能") \'指定垂直坐标
    Chart.AxisX.SetValueLabel(i1, t.Rows(i1)("版本号")) \'指定字符表示
Next