Foxtable(狐表)用户栏目专家坐堂 → 图表X轴重叠文字


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

主题:图表X轴重叠文字

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
图表X轴重叠文字  发帖心情 Post By:2016/10/11 14:24:00 [只看该作者]

请教老师 以下代码,在进行combox切换后,会出现重叠

 

Dim b1 As New SQLGroupTableBuilder("统计表00005","工作策划副表")  '20160930
b1.C   
b1.Groups.AddDef("计划开始时间", DateGroupEnum.Year, "年") '根据日期按年分组
b1.Groups.AddDef("计划开始时间", DateGroupEnum.Month, "月") '根据日期按年分组
b1.Groups.AddDef("项目名称")
b1.Groups.AddDef("专业部室")
b1.Groups.AddDef("相关专业")
b1.Groups.AddDef("执行人")
b1.Totals.AddExp("审批完成","审批完成*-1","立项未完成工作项",AggregateEnum.count)
b1.Filter = "计划开始时间 >= #" & e.Form.Controls("DateTimePicker1").Value & "# And 计划完成时间 <= #" & e.Form.Controls("DateTimePicker2").Value & "# and 审批完成=False And 专业部室 Like '%" & e.Form.Controls("ComboBox2").Text & "%'"
b1.VerticalTotal = True
b1.GrandProportion = True
Tables("工作分析_Table2").DataSource = b1.BuildDataSource()


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("工作分析_Table2") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear() '清除图表原来的图系
Chart.ChartType = ChartTypeEnum.Bar '设置图表类型
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 '启用字符标示

 

 

 

 

另外请教老师,已发布的项目如何设置到服务器上

[此贴子已经被作者于2016/10/11 14:24:50编辑过]

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/11 14:41:00 [只看该作者]

生成图表前调用一下ClearValueLabel

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("工作分析_Table2") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear() '清除图表原来的图系
Chart.AxisX.ClearValueLabel
Chart.AxisY.ClearValueLabel
Chart.ChartType = ChartTypeEnum.Bar '设置图表类型
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 '启用字符标示

 回到顶部