Foxtable(狐表)用户栏目专家坐堂 → 关于图表


  共有3216人关注过本帖树形打印复制链接

主题:关于图表

美女呀,离线,留言给我吧!
wymoonwalker
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:224 积分:2120 威望:0 精华:0 注册:2014/2/10 10:59:00
关于图表  发帖心情 Post By:2015/4/2 11:27:00 [只看该作者]

请问有没有关于生成图表的好例子学习一下?

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/2 11:28:00 [只看该作者]

帮助整个章节都是例子啊


 回到顶部
美女呀,离线,留言给我吧!
wymoonwalker
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:224 积分:2120 威望:0 精华:0 注册:2014/2/10 10:59:00
  发帖心情 Post By:2015/4/2 11:49:00 [只看该作者]

小白,不大会改代码。

我用代码生成了一个统计汇总表,然后用图表显示这个统计表。

统计汇总表里有一列“合计”,然后图表在统计列也显示出一个“合计”,数据比其他显然大很多,而且也不必要。

我如何在图表中去掉“合计”呢,但统计表中得继续保留。

 

图表的代码:

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

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/2 11:52:00 [只看该作者]

请把文件例子发上来

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/4/2 11:59:00 [只看该作者]

 呃,必须编写代码生成图表才能额外处理。

 

 具体请上传例子。


 回到顶部
美女呀,离线,留言给我吧!
wymoonwalker
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:224 积分:2120 威望:0 精华:0 注册:2014/2/10 10:59:00
  发帖心情 Post By:2015/4/2 16:28:00 [只看该作者]

嗯,根据帮助和论坛里的例子,我做好了一个窗口图表。

代码就是先生成统计表,然后生成图表。

现在是这个窗口-设计窗口-预览的时候一切正常。

关掉窗口设计器,点击应用窗口时,显示的是代码里第一段写的统计表,而不是图表。

请问这是怎么回事?

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/4/2 16:30:00 [只看该作者]

 窗口,设置成独立窗口或者模式窗口看看。

 

 或者,你切换表看看,窗口在其它表里


 回到顶部
美女呀,离线,留言给我吧!
wymoonwalker
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:224 积分:2120 威望:0 精华:0 注册:2014/2/10 10:59:00
  发帖心情 Post By:2015/4/2 16:33:00 [只看该作者]

谢谢甜老师!这两天光学习图表,忘记窗口的知识了。设置成独立窗口就可以啦。

 回到顶部