Foxtable(狐表)用户栏目专家坐堂 → [求助]关于图表X轴日期型和字符型切换显示不正常的请教


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

主题:[求助]关于图表X轴日期型和字符型切换显示不正常的请教

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


加好友 发短信
等级:幼狐 帖子:125 积分:982 威望:0 精华:0 注册:2016/1/30 14:12:00
[求助]关于图表X轴日期型和字符型切换显示不正常的请教  发帖心情 Post By:2016/4/12 1:26:00 [只看该作者]

各位,请教个关于图表X轴日期节点和字符型节点切换显示不正常的问题。界面上有一个图表控件,两个按钮。其中一个按钮代码如下:
以下内容为程序代码:

1 Dim temp As S tring = "ZB0002"
2 Dim dt As DataTable
3 Dim cmd1 As new SQLCommand
4 cmd1.C
5 cmd1.CommandText ="s elect * from (s elect 装备信息_类别编号,装备信息_装备型号,装备信息_数量 as 数量,入库信息_入库时间 from{入库明细} a left join {入库单} b on a.入库单号 = b.入库单号) where 装备信息_类别编号='" & temp & "'"
6 dt = cmd1.ExecuteReader
7 Dim Chart As WinForm.Chart '定义一个图表变量
8 Dim Series As WinForm.ChartSeries '定义一个图系变量
9 Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
10 Chart.DataTable = dt
11 Chart.ChartType = ChartTypeEnum.Bar
12 Chart.AxisX.DateType = True '明确指定X轴是日期型
13 Chart.AxisX.AnnoFormatString = "yyyy-MM-dd" '制定日期表示格式
14 Chart.SeriesList.Clear() '清除图表原来的图系
15 Series = Chart.SeriesList.Add() '增加一个图系
16 Series.X.DataField = "入库信息_入库时间" 'X轴绑定到月份列
17 Series.Y.DataField = "数量" 'Y轴绑定到数量列


另一个按钮代码仅仅是将,Chart.AxisX.DateType = True
Chart.AxisX.AnnoFormatString = "yyyy-MM-dd"   两句去掉,将Series.X.DataField = "入库信息_入库时间" 改为:Series.X.DataField = "数量",其它其不变。

奇怪的是:点击第2个代码时能正常显示,X轴的各节点名字也正常,但此时点击第1个代码后,能够正常显示图表,就是图表的X轴不显示节点的日期。但是,如果2个按钮的代码中X轴均是日期时一切正常,均是字符时也一切正常,就是一个字符 ,一个日期,切换后日期不能正常显示!!!!

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


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

另一个按钮代码仅仅是将,Chart.AxisX.DateType = True

改成:Chart.AxisX.DateType = false,试试

不行上传例子说明



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


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

 是不是你没有把x轴原来的字符清除?上传具体例子。

 

Chart.AxisX.ClearValueLabel


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


加好友 发短信
等级:幼狐 帖子:125 积分:982 威望:0 精华:0 注册:2016/1/30 14:12:00
回复:(大红袍) 是不是你没有把x轴原来的字符清...  发帖心情 Post By:2016/4/12 13:43:00 [只看该作者]

大红袍老师,请看我的例子。当切换点击到“X轴为日期”时,X轴不显示任何日期。请再帮忙看下为什么。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


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


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

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.DataTable = DataTables("表A")
Chart.ChartType = ChartTypeEnum.Bar
Chart.AxisX.AnnoWithLabels = False
Chart.AxisX.DateType =True
Chart.AxisX.AnnoFormatString = "yyyy-MM-dd"
Chart.SeriesList.Clear() '清除图表原来的图系
Series = Chart.SeriesList.Add() '增加一个图系


Series.X.DataField = "日期" 'X轴绑定到月份列
Series.Y.DataField = "数量" 'Y轴绑定到数量列
Series.DataLabelText = "{#YVAL}"


 回到顶部