Foxtable(狐表)用户栏目专家坐堂 → 关于图表中数据进行筛选显示的问题 求解!


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

主题:关于图表中数据进行筛选显示的问题 求解!

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
关于图表中数据进行筛选显示的问题 求解!  发帖心情 Post By:2015/5/10 22:11:00 [只看该作者]

Dim t As Table = Tables("统计表1") '定义一个变量t引用数据表
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar '图表类型该为Bar(条形)
Chart.DataSource = "统计表1" '设置绑定表
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '增加一个图系
Series.X.DataField = "产品" 'X轴绑定到产品列
Series.Y.DataField = "数量" 'Y轴绑定到数量列
Series.DataLabelText = "{#YVAL}"

 

以上代码是帮助中的实例代码

 

求修正实现如下效果:

1、只显示对应月份的数据,比如只显示当前时间对应的月份数据。

2、产品列 由于字数不一定固定,所以会存在大于15个字符的字,有没有办法让字换行显示。

3、补充1的问题,让数据只显示对应七天的数据



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


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

1、用编码的方式生成图表 http://www.foxtable.com/help/topics/0968.htm 2、你可以在生成的过程中检测有多少个字符,然后控制换行; 或者 http://www.foxtable.com/help/topics/1030.htm 3、设置筛选条件 http://www.foxtable.com/help/topics/2720.htm

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍)1、用编码的方式生成图表 http://www...  发帖心情 Post By:2015/5/10 22:30:00 [只看该作者]

1、已经用代码对应生成

2、采用名称咧角度变化 效果不美观

3、设置了筛选条件  但是不知道怎么结合代码整体实现 

下面的代码就是实现筛选本周信息 然后会图表 求指导

 

Dim  y As  Integer =  Date.Today.Year
 Dim  w As  Integer =  Date.Today.DayOfWeek  '算出今天是星期几
Dim  dt1 As  Date =  Date.Today.AddDays(-w)  '获取本周的第一天
Dim  dt2 As  Date =  Date.Today.AddDays(6 -  w)  '获取本周的最后一天
Dim  Filter As  String
 Filter =  "接单日期 >= #"  &  dt1  &  "# And  接单日期 <= #"  &  dt2  &  "#"
 Tables("客户信息").Filter =  Filter


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("客户信息") '定义一个变量t引用数据表
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar '图表类型该为Bar(条形)
Chart.DataSource = "客户信息" '设置绑定表
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '增加一个图系
Series.X.DataField = "客户姓名" 'X轴绑定到产品列
Series.Y.DataField = "合同总款" 'Y轴绑定到数量列
Series.DataLabelText = "{#YVAL}" & "{#XVAL}"
Chart.AxisX.AnnoRotation = - 45 'X轴标示逆时针旋转45度

 

红色部分怎么按照你的思路获取字符数然后换行呢  假设五个字后换行


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


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

1、看方法二; 2、在循环的过程中,判断内容的字符长度,然后处理是否换行; 3、看1;

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍)1、看方法二;2、在循环的过程中...  发帖心情 Post By:2015/5/10 23:00:00 [只看该作者]

2号问题还是没有得以解决 继续求助

 

当前运行效果如图

 


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

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


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

处理长字符,参考代码

 

Dim s As String = "111113"
Dim rn As Integer = 5
Dim ns As String = ""
If s.Length > rn Then
    ns = s.SubString(0,rn)
    For i As Integer = 2 To Math.Ceiling(s.Length / rn)
        If i = Math.Ceiling(s.Length / rn) Then
            ns &= vbcrlf & s.SubString(rn*(i-1))
        Else
            ns &= vbcrlf & s.SubString(rn*(i-1), rn)
        End If
    Next
Else
    ns = s
End If

msgbox(ns)

[此贴子已经被作者于2015/5/10 23:19:56编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍)处理长字符,参考代码 Dim ...  发帖心情 Post By:2015/5/10 23:32:00 [只看该作者]

经过对比  对于图标里面的这个操作还是无法实现大于五个字符时候换行 一旦先行换行 然后再赋值的话 提示没有对应的值  继续求解!

由于第一次操作图表 没有实际经验 还望大红袍老师多多指导  再次谢谢

 

Dim Chart  As WinForm.Chart  '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table =  Tables("客户信息") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.DataSource = "客户信息" '设置绑定表
Chart.ChartType = ChartTypeEnum.Bar
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)("客户姓名") )'在位置4插入456) '指定字符表示
Next
Series.DataLabelText = "{#YVAL}元"
 Chart.AxisX.AnnoWithLabels = True '启用字符标

 

Dim s1 As Row= Tables("客户信息").Current
Dim s As String = s1("客户姓名")
Dim rn As Integer = 5
Dim ns As String = ""
If s.Length > rn Then
    ns = s.SubString(0,rn)
    For i As Integer = 2 To Math.Ceiling(s.Length / rn)
        If i = Math.Ceiling(s.Length / rn) Then
            ns &= vbcrlf & s.SubString(rn*(i-1))
        Else
            ns &= vbcrlf & s.SubString(rn*(i-1), rn)
        End If
    Next
Else
    ns = s
End If


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


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

很湿望

 

Dim Chart  As WinForm.Chart  '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table =  Tables("客户信息") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.DataSource = "客户信息" '设置绑定表
Chart.ChartType = ChartTypeEnum.Bar
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)("合同总款") '指定垂直坐标
   
    Dim s As String = t.Rows(i)("客户姓名")
    Dim rn As Integer = 5
    Dim ns As String = ""
    If s.Length > rn Then
        ns = s.SubString(0,rn)
        For i As Integer = 2 To Math.Ceiling(s.Length / rn)
            If i = Math.Ceiling(s.Length / rn) Then
                ns &= vbcrlf & s.SubString(rn*(i-1))
            Else
                ns &= vbcrlf & s.SubString(rn*(i-1), rn)
            End If
        Next
    Else
        ns = s
    End If
   
    Chart.AxisX.SetValueLabel(i,  ns)'在位置4插入456) '指定字符表示
Next
Series.DataLabelText = "{#YVAL}元"
Chart.AxisX.AnnoWithLabels = True '启用字符标

[此贴子已经被作者于2015/5/11 9:34:24编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(大红袍)很湿望  Dim Chart  A...  发帖心情 Post By:2015/5/11 9:56:00 [只看该作者]

谢谢


 回到顶部