Foxtable(狐表)用户栏目专家坐堂 → 关于图表分析中的同比增长


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

主题:关于图表分析中的同比增长

帅哥哟,离线,有人找我吗?
lgj716330
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
关于图表分析中的同比增长  发帖心情 Post By:2015/12/19 14:41:00 [只看该作者]

请帮忙看下代码有没有问题,统计表中有同比数据,在图表中没有显示,不知是不是代码写得哪里有问题
Dim b As New SQLgroupTableBuilder("零售数量同期分析","零售业务")  
b.AddTable("零售业务","部门名称","部门档案","部门名称")
b.Groups.AddDef("所属单位") 
b.Groups.AddDef("部门类型")
b.Groups.AddDef("上级部门","部门") 
b.Groups.AddDef("所属日期", DateGroupEnum.Year, "年")
b.Groups.AddDef("所属日期", "月")
b.Totals.AddDef("零售数量")
b.SamePeriodGrowth = True
b.Decimals = 2 '小数点取0位
b.Filter = Filter
b.Build '生成统计表


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= e.Form.Controls("销量同期") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar '设置图表类型 
Chart.ChartType2 = ChartTypeEnum.XYPlot '图表2类型该为线形
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '给图表2增加一个图系
chart.AxisX.ClearValueLabel
chart.AxisY.ClearValueLabel
Chart.SeriesList2.Clear() '清除图表原来的图系
Series = Chart.SeriesList2.Add() '给图表2增加一个图系
chart.AxisX.ClearValueLabel
chart.AxisY2.ClearValueLabel
For Each Year As String In DataTables("零售数量同期分析").GetValues("年")
    Series = Chart.SeriesList.Add() '每年一个图系
    Series.Text = Year  '指定图系名称为年份
    Series.Length = 12  '指定图系的数据点数,1年12个月
    Chart.AxisX.Min = 1  '指定X轴的最小值,也就是从1月开始
    Chart.AxisX.Max = 12 ''指定X轴的最大值,一年只有12个月
    For Month As Integer = 1 To 12 '逐月设置坐标
        Series.X(Month) = Month      '指定水平坐标为月份
        Chart.AxisX.SetValueLabel(1, "一月份")
        Chart.AxisX.SetValueLabel(2, "二月份")
        Chart.AxisX.SetValueLabel(3, "三月份")
        Chart.AxisX.SetValueLabel(4, "四月份")
        Chart.AxisX.SetValueLabel(5, "五月份")
        Chart.AxisX.SetValueLabel(6, "六月份")
        Chart.AxisX.SetValueLabel(7, "七月份")
        Chart.AxisX.SetValueLabel(8, "8月份")
        Chart.AxisX.SetValueLabel(9, "九月份")
        Chart.AxisX.SetValueLabel(10, "十月份")
        Chart.AxisX.SetValueLabel(11, "十一月份")
        Chart.AxisX.SetValueLabel(12, "十二月份")
        Dim r As DataRow = DataTables("零售数量同期分析").Find("年 = " & Year & " And  月 = " & Month)'找出对应年月的行
        If r IsNot Nothing '如果找到对应年月的行
            Series.Y(Month) = r("零售数量") '指定数量作为垂直坐标
            Series.Y2(Month) = r("零售数量stp") '指定数量作为垂直坐标
        End If
    Next
Next
Chart.AxisX.AnnoWithLabels = True '启用字符标示
Chart.TopMost = True '不同图表间切换
Chart.SeriesList(0).DataLabelText = "{#YVAL}" '显示数据标记的值
Chart.SeriesList(0).TooltipText = "{#YVAL}" '停在数据标记上时是否显示值
Chart.SeriesList(1).DataLabelText = "{#YVAL}"
Chart.SeriesList(1).TooltipText = "{#YVAL}"
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.South '图列显示在南方(底端)


图片点击可在新窗口打开查看此主题相关图片如下:66.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2015/12/19 15:26:00 [只看该作者]

是不是只有通过绑定才行呢

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/12/19 16:00:00 [只看该作者]

上传例子测试

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


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2015/12/19 16:22:00 [只看该作者]

好的,另外这里面还有个问题就是其中一个柱形图的数据没显示出来,不知怎么回事
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.foxdb


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/12/19 17:01:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.foxdb


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


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2015/12/19 21:20:00 [只看该作者]

谢谢Hyphen

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


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2015/12/19 22:38:00 [只看该作者]

再问一下,数据标示能够以百分比形式显示吗

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/12/20 12:04:00 [只看该作者]

以下是引用lgj716330在2015/12/19 22:38:00的发言:
再问一下,数据标示能够以百分比形式显示吗

 

不可以,纵坐标是什么值,就只能显示什么值。

 

你可以乘以100来显示,但百分号无法显示。


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


加好友 发短信
等级:六尾狐 帖子:1391 积分:10713 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2015/12/20 17:11:00 [只看该作者]

好的, 知道了

 回到顶部