小白,不大会改代码。
我用代码生成了一个统计汇总表,然后用图表显示这个统计表。
统计汇总表里有一列“合计”,然后图表在统计列也显示出一个“合计”,数据比其他显然大很多,而且也不必要。
我如何在图表中去掉“合计”呢,但统计表中得继续保留。
图表的代码:
Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.Bar '图表1类型该为Bar(条形)
Chart.ChartType2 = ChartTypeEnum.XYPlot '图表2类型该为线形
Chart.DataSource = "统计月报表2" '设置绑定表
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '给图表1增加一个图系
Series.Text = "合计_合同个数"
Series.X.DataField = "签订单位" 'X轴绑定到产品列
Series.Y.DataField = "合计_合同个数" 'Y轴绑定到数量列
Chart.SeriesList2.Clear() '清除图表原来的图系
Series = Chart.SeriesList2.Add() '给图表2增加一个图系
Series.Text = "合计_合同额"
Series.X.DataField = "签订单位" 'X轴绑定到产品列
Series.Y.DataField = "合计_合同额" 'Y轴绑定到数量列
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.South '图列显示在南方(底端)
Chart.AxisY.Text = "合计_合同个数"
Chart.AxisY2.Text = "合计_合同额"
统计表的代码:
Dim g As New CrossTableBuilder("统计月报表2", DataTables("合同台帐2015"))
g.HGroups.AddDef("签订单位")
g.VGroups.AddDef("审批", "已签订合同额|未签订合同额")
g.Totals.AddDef("合同个数","合同个数")
g.Totals.AddDef("合同额", "合同额")
g.HorizontalTotal = True
g.VerticalTotal = True
g.Build()
Dim t As Table = Tables("统计月报表2")
t.DataTable.DataCols.Add("省内项目", Gettype(Double))
t.DataTable.DataCols.Add("省外项目", Gettype(Double))
t.DataTable.DataCols.Add("民用建筑", Gettype(Double))
For Each r As Row In t.Rows
If r.Index = t.Rows.Count - 1 Then
r("省内项目") = DataTables("合同台帐2015").Compute("sum(合同额)", "工程所在省 = '山东省'")
r("省外项目") = DataTables("合同台帐2015").Compute("sum(合同额)", "工程所在省 <> '山东省'")
r("民用建筑") = DataTables("合同台帐2015").Compute("sum(合同额)", "项目所属行业 = '民用建筑'")
Else
r("省内项目") = DataTables("合同台帐2015").Compute("sum(合同额)", "签订单位 = '" & r("签订单位") & "' and 工程所在省 = '山东省'")
r("省外项目") = DataTables("合同台帐2015").Compute("sum(合同额)", "签订单位 = '" & r("签订单位") & "' and 工程所在省 <> '山东省'")
r("民用建筑") = DataTables("合同台帐2015").Compute("sum(合同额)", "签订单位 = '" & r("签订单位") & "' and 项目所属行业 = '民用建筑'")
End If
Next
MainTable = t