以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 让图表显示统计表里没有的数据 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=30180) |
||||
-- 作者:keeryq -- 发布时间:2013/3/22 12:14:00 -- 让图表显示统计表里没有的数据 谁能帮我看看分析窗体呢 怎么才能在不大动的基础上实现显示的数据仅仅是(人天统计/实际人数)这一项呢 现在显示的是人天统计、实际人数两个数据 我怎么加都不对 困扰我好些天了 麻烦了 谢谢呢 怎么才能让图表里显示按年份统计的数据都是从上一年的4月1号到今年的3月31号呢 g.Filter = "[培训时间] >= #4/1/2012# and [培训时间] <= #3/31/2013#" 这句加上后仅仅是这一年的 怎么才能点了按年统计的按钮再点区分课程 所有的信息就都出来了呢
[此贴子已经被作者于2013-3-26 19:12:48编辑过]
|
||||
-- 作者:keeryq -- 发布时间:2013/3/22 13:00:00 -- 救救我呗 实在想不出来了 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2013/3/22 14:44:00 -- 之前不是帮你做好了吗:
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=29829&authorid=0&page=0&star=3
|
||||
-- 作者:keeryq -- 发布时间:2013/3/22 15:16:00 -- 嗯嗯 该说谢谢的 但是改变了布局 我加了这句话DataTables("统计表1").DataCols.Add(" 新列",Gettype(Double),"人天统计/实际人数") 让Y轴绑定到新列 但是没成功 此主题相关图片如下:捕获.png |
||||
-- 作者:狐狸爸爸 -- 发布时间:2013/3/22 16:07:00 -- 都是一样的啊,例如:
Dim nd As WinForm.RadioButton = e.Form.Controls("按年度统计") \'如果是按年 |
||||
-- 作者:keeryq -- 发布时间:2013/3/25 12:23:00 -- 要是统计表示这样带分组的呢 这个要是加上去就报错了
\'---------------------------------生成统计表------------------ For Each c As Col In t.Cols Chart.LegendVisible = True \'显示图列 |
||||
-- 作者:keeryq -- 发布时间:2013/3/25 16:19:00 -- 回复:(狐狸爸爸)都是一样的啊,例如: &n... 要是统计表示这样带分组的呢 这个\' DataTables("统计表1").DataCols.Add("新列",Gettype(Double),"人天统计/实际人数")
\'---------------------------------生成统计表------------------ For Each c As Col In t.Cols Chart.LegendVisible = True \'显示图列 |
||||
-- 作者:don -- 发布时间:2013/3/25 18:17:00 -- \'---------------------------------生成统计表------------------
Dim g As New CrossTableBuilder("统计表1", DataTables("课程信息"))
g.HGroups.AddDef("培训时间", DateGroupEnum.Year, "年")
g.VGroups.AddDef("课程")
g.Totals.AddDef("实际人数", "实际人数")
g.Totals.AddDef("人天统计", "人天统计")
g.VerticalProportion = True
g.VerticalProportion Caption ="/实际人数" \'论坛有Bug ,请将[g.VerticalProportion Caption]间的空格去掉
g.Build() \'-----------------------------------生成图表----------------------
Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Dim t As Table = Tables("统计表1") \'定义一个变量t引用数据表
Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart.SeriesList.Clear()
Chart.ChartType = ChartTypeEnum.Bar \'图表类型改为Bar(条形)
Chart.DataSource = "统计表1" \'设置绑定表
chart.AxisX.Major = 1
Chart.AxisY.Major = 100
Chart.AxisY.Min = 0 \'指定Y轴的最小值
For Each c As Col In t.Cols
If c.Caption.Contains("实际人数/") Then
c.Visible = False
End If
c.DataCol.SetFormat("#,###")
Next
For Each r As Row In t.Rows
For Each c As Col In t.Cols
If c.Caption.Contains("人天统计/") Then
r(c.name) =t(r.Index,c.Index-1)/t(r.Index,c.Index-3)
End If
Next
Next
For Each c As Col In t.Cols
If c.Name <> "年" Then
If c.Visible = True Then
Series = Chart.SeriesList.Add() \'增加一个图系
Series.Text = c.Caption \'Name \'设置图系的标题
Series.X.DataField = "年" \'X轴绑定到产品列
Series.Y.DataField = c.Name \'设置Y轴的绑定列
Series.DataLabelText = "{#YVAL}"
End If
End If
Next
\'Chart.VisualEffect = True \'加上这一行,让你的图表更漂亮
Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
ChaRT.HeaderText = "课程分析-人天统计"
Chart.AxisX.Text = "年份"
[此贴子已经被作者于2013-3-25 22:26:37编辑过]
|
||||
-- 作者:keeryq -- 发布时间:2013/3/25 20:59:00 -- 回复:(don)'---------------------------------生成... 大侠 这是怎么回事呢??? 此主题相关图片如下:未命名.jpg |
||||
-- 作者:don -- 发布时间:2013/3/25 22:27:00 -- g.VerticalProportion Caption ="/实际人数" \'论坛有Bug ,请将[g.VerticalProportion Caption]间的空格去掉
|