Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
想让月份停在X轴,年份为图标.年份显在下面.
数据如下:
代码如下,望高手指点.
Dim q As new QueryBuilder
q.TableName = "订单销售汇总"
q.SelectString = "select 年份,sum (销售金额) 销售金额,月份 from {订单} group by 年份,月份 "
q.Build
MainTable = Tables("订单销售汇总")
Dim g As New CrossTableBuilder("终端订单销售汇总", DataTables("终端订单销售汇总"))
g.Caption = "订单销售汇总"
g.HGroups.AddDef("年份")
g.VGroups.AddDef("月份")
g.Totals.AddDef("销售金额", "销售金额")
g.Build()
MainTable = Tables("订单销售汇总")
Tables("订单销售汇总").AutoSizeCols()
MainTable.Font = New Font("宋体",10,FontStyle.Regular)
Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("订单销售汇总") '定义一个变量t引用数据表
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.XYPlot '图表类型改为XYPlot(线形)
Chart.DataSource = "订单销售汇总" '设置绑定表
Chart.SeriesList.Clear() '清除图表原来的图系
For Each c As Col In t.Cols
If c.Name <> "销售金额" Then
Series = Chart.SeriesList.Add() '增加一个图系
Series.Text = c.Caption '设置图系的标题
Series.X.DataField = "年份" 'X轴绑定到产品列
Series.Y.DataField = c.Name '设置Y轴的绑定列
Chart.AxisX.AnnoRotation = - 45 'X轴标示逆时针旋转45度
Series.TooltipText = "X = {#XVAL}, Y = {#YVAL}"
End If
Next
Chart.VisualEffect = False '不采用Visual风格
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.South '图列显示在南方(底端)
MainTable = Tables("订单销售汇总")
MainTable.Font = New Font("宋体",10,FontStyle.Regular)
希望能生成这样的图表.一年一条线,右边的图示表示年份.
呵呵,为啥不呼叫狐爸呢?
Dim Chart As WinForm.Chart
Dim Series As WinForm.ChartSeries
Chart= e.Form.Controls("Chart1")
Chart.SeriesList.Clear()
Dim nms() As String = {"一","二","三","四","五","六","七","八","九","十","十一","十二"}
For Each r As Row In Tables("订单销售汇总").Rows
Series = Chart.SeriesList.Add()
series.Text = r("年份")
Series.Length = nms.length
For i As Integer = 0 To nms.Length - 1
Series.X(i) = i
Series.Y(i) = r(nms(i))
Next
Next
For i As Integer = 0 To nms.Length - 1
Chart.AxisX.SetValueLabel(i,nms(i))
Next
Chart.AxisX.AnnoWithLabels = True
Chart.LegendVisible = True
下载信息 [文件大小: 下载次数: ] | |
![]() |