Foxtable(狐表)用户栏目专家坐堂 → [求助]图表中数据值在鼠标指针定位时显示值是能否将日期格式的时分秒去除?


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

主题:[求助]图表中数据值在鼠标指针定位时显示值是能否将日期格式的时分秒去除?

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


加好友 发短信
等级:小狐 帖子:348 积分:3553 威望:0 精华:0 注册:2015/8/16 19:06:00
[求助]图表中数据值在鼠标指针定位时显示值是能否将日期格式的时分秒去除?  发帖心情 Post By:2016/4/21 8:13:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:未命名.bmp
图片点击可在新窗口打开查看
如何设置才可以在鼠标定位时显示“日期:2016-2-5 销量:857”

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


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

赋值X轴标题的时候就要先设置好日期的格式

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


加好友 发短信
等级:小狐 帖子:348 积分:3553 威望:0 精华:0 注册:2015/8/16 19:06:00
  发帖心情 Post By:2016/4/21 8:59:00 [只看该作者]


Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("商品日销售汇总_Table1") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear() '清除图表原来的图系
Chart.AxisX.DateType = True 'X轴是日期型
Chart.AxisX.AnnoFormatString = "yyyy-MM-dd" '设置X轴格式
'Chart.AxisX.Major = 1 '逐个显示
'Chart.AxisX.MinorTick = False '逐个显示
Series = Chart.SeriesList.Add() '增加一个图系
Series.TooltipText = "日期: {#XVAL},销量: {#YVAL}"
Series.Length = t.Rows.Count '图系的数据点数等于表的行数
For i As Integer = 0 To t.Rows.Count - 1 '指定每个数据点的位置
    Series.X(i) = t.Rows(i)("销售日期") '指定水平坐标
    Series.Y(i) = t.Rows(i)("销售数量") '指定垂直坐标
Next
是这样吗?可还是显示为2016-2-5 0:00:00

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


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

Series.X(i) = format(t.Rows(i)("销售日期"),"yyyy-MM-dd") '指定水平坐标

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


加好友 发短信
等级:小狐 帖子:348 积分:3553 威望:0 精华:0 注册:2015/8/16 19:06:00
  发帖心情 Post By:2016/4/21 9:59:00 [只看该作者]

以下是引用Hyphen在2016/4/21 9:00:00的发言:
Series.X(i) = format(t.Rows(i)("销售日期"),"yyyy-MM-dd") '指定水平坐标

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


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


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

测试了一下,没有方法满足你的要求.......

 

最多这样

 

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("商品日销售汇总_Table1") '定义一个变量t引用数据表
Chart= e.Form.Controls("Chart1") ' 引用窗口中的图表
Chart.SeriesList.Clear() '清除图表原来的图系
'Chart.AxisX.Major = 1 '逐个显示
'Chart.AxisX.MinorTick = False '逐个显示
Series = Chart.SeriesList.Add() '增加一个图系
Series.TooltipText = "日期: {#XVAL},销量: {#YVAL}"
Series.Length = t.Rows.Count '图系的数据点数等于表的行数
For i As Integer = 0 To t.Rows.Count - 1 '指定每个数据点的位置
    Dim idx As Integer = Cint(Format(t.Rows(i)("销售日期"), "yyyyMMdd"))
    Series.X(i) = Cint(Format(t.Rows(i)("销售日期"), "yyyyMMdd")) '指定水平坐标
    Series.Y(i) = t.Rows(i)("销售数量") '指定垂直坐标
    Chart.AxisX.SetValueLabel(idx, t.Rows(i)("销售日期")) '指定字符表示
Next
Chart.AxisX.AnnoWithLabels = True '启用字符标示


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/8/24 20:57:00 [只看该作者]

 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=89448&skin=0

我当时问红袍老师:3.如果要把鼠标放在数据点上,显示当前点的时间和产量,也就是X、Y值,Y值是数值,可以用YVAL显示,时间如何显示呢? 红袍老师说不行啊。

这个帖子中1楼的时间显示是如何做到的?

加一句 Chart.AxisX.DateType = True 'X轴是日期型 就可以了吗?

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


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

 只有日期类型和数值类型两种,而且格式不能指定的

 回到顶部