Foxtable(狐表)用户栏目专家坐堂 → 求助:在帮助中有图表是按照日来显示的,我想问问这个日是否可以只显示当前月份的日数呢?


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

主题:求助:在帮助中有图表是按照日来显示的,我想问问这个日是否可以只显示当前月份的日数呢?

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
求助:在帮助中有图表是按照日来显示的,我想问问这个日是否可以只显示当前月份的日数呢?  发帖心情 Post By:2015/5/10 23:55:00 [只看该作者]

求助:在帮助中有图表是按照日来显示的,我想问问这个日是否可以只显示当前月份的日数呢?

 

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

 

代码如下:

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= Forms("图标").Controls("Chart2") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar '图表类型该为Bar(条形)
Chart.DataSource = "客户信息" '设置绑定表
Chart.AxisX.DateType = True 'X轴是日期型
Chart.AxisX.AnnoFormatString = "dd" '只显示日
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '增加一个图系
Series.X.DataField = "接单日期" 'X轴绑定到产品列
Series.Y.DataField = "合同总款" 'Y轴绑定到数量列

 

请各位老师多多指导 !谢谢!

 

经过测试将dd换成MM可以按照月份显示!



[此贴子已经被作者于2015/5/11 0:04:00编辑过]

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


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

 不明白你什么意思,如果要灵活控制,就不要用绑定的方式去做。

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍) 不明白你什么意思,如果要灵活...  发帖心情 Post By:2015/5/11 9:58:00 [只看该作者]

意思就是假设五月有31天

那日期咧就分别显示1,2,3,4,5,6,7,8到31,

就是说只显示当前月的天数

谢谢 大红袍老师  期待继续指导


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


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

 不要绑定啊,用上次教你的方法二啊


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍) 不要绑定啊,用上次教你的方法...  发帖心情 Post By:2015/5/11 10:33:00 [只看该作者]

Dim Chart As WinForm.Chart '定义一个图表变量
Dim
Series As WinForm.ChartSeries '定义一个图系变量
Dim
t As Table = Tables("统计表1") '定义一个变量t引用数据表
Chart= Forms(
"窗口1").Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear()
'清除图表原来的图系
Series = Chart.SeriesList.Add()
'增加一个图系
Series.Length = t.Rows.Count
'设置图系的长度
For
i As integer = 0 to t.Rows.Count - 1 '指定每个数据点的位置
    Series.X(i) = i
'指定水平坐标
    Series.Y(i) = t.Rows(i)(
"数量") '指定垂直坐标
    Chart.AxisX.SetValueLabel(i, t.Rows(i)(
"产品")) '指定字符表示
Next

Chart.AxisX.AnnoWithLabels =
True '启用字符标示

 

上述是帮助二的代码

 

经我自己操作,无法实现当前月的天数显示。继续求解!


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


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

Dim g As New GroupTableBuilder("统计表1", DataTables("订单"))
g.Groups.AddDef("日期", DateGroupEnum.day)
g.Totals.AddDef("金额", AggregateEnum.sum)
Dim d As Date = new Date(Date.Today.Year, Date.Today.Month, 1)
g.Filter = "日期 >= #" & d & "# and 日期 < #" & d.AddMonths(1) & "#"
g.Build()
MainTable = Tables("统计表1")

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("统计表1") '定义一个变量t引用数据表
Chart= Forms("窗口2").Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear() '清除图表原来的图系
chart.AxisX.ClearValueLabel
Chart.ChartType = ChartTypeEnum.Bar '图表类型该为Bar(条形)
Series = Chart.SeriesList.Add() '增加一个图系
Series.Length = Date.DaysInMonth(d.Year, d.Month) + 1 '设置图系的长度
For i As Integer = 1 To series.Length   '指定每个数据点的位置
    Dim idx As Integer = t.FindRow("日期 = " & i)
    If Idx >= 0 Then
        Series.X(i) = i '指定水平坐标
        Series.Y(i) = t.Rows(idx)("金额") '指定垂直坐标
        Chart.AxisX.SetValueLabel(i, t.Rows(idx)("日期")) '指定字符表示
    Else
        Series.X(i) = i '指定水平坐标
        Series.Y(i) = 0
        Chart.AxisX.SetValueLabel(i, i) '指定字符表示
    End If
Next
Chart.AxisX.AnnoWithLabels = True '启用字符标示


 


 回到顶部