以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  图表问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=8447)

--  作者:qhczy
--  发布时间:2010/10/26 14:45:00
--  图表问题

如附件所示,

1.怎么让数据标注中的X=7替代成X=7下面所对应的数据?.
2.怎么改变拆线处圆点和三角形的大小?
3.日期Series.X.DataField = "月份"  是这样写的,但在生成图表时怎么提示日期数据有错?

 

相关代码

Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart.VisualEffect = True

Chart.ChartType = ChartTypeEnum.xyplot

Chart.ChartType2 = ChartTypeEnum.XYPlot

Chart.DataSource = "产品销售表" \'设置绑定表
Chart.SeriesList.Clear() \'清除图表原来的图系
Series = Chart.SeriesList.Add() \'给图表1增加一个图系
Series = Chart.SeriesList.Add() \'增加一个图系
Series.TooltipText = "X = {#XVAL}, 件数 = {#YVAL}"
Series.Text = "件数"
Series.X.DataField = "月份"

Series.Y.DataField = "件数"

Chart.SeriesList2.Clear() \'清除图表原来的图系
Series = Chart.SeriesList2.Add() \'给图表2增加一个图系
Series.Text = "金额(元)"
Series.X.DataField = "月份"

Series.Y.DataField = "金额"

Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South

Chart.AxisX.Text = "档次"
Chart.AxisY.Text = "月份"
Chart.AxisY2.Text = "金额"

Chart.BarClusterWidth = 50
Chart.BarClusterWidth2 = 50
Chart.AxisX.AnnoRotation = - 45

Chart.PrintWidth = 180
Chart.PrintHeight = 150
Series.TooltipText = "X = {#XVAL}, 金额 = {#YVAL} "

 

 


此主题相关图片如下:图表.jpg
按此在新窗口浏览图片


 X轴DataField日期型数据报错如图


此主题相关图片如下:2.jpg
按此在新窗口浏览图片

--  作者:狐狸爸爸
--  发布时间:2010/10/26 15:08:00
--  
1、看看生成图表中“数据表示这一节”
2、看看ChartSeries的MarkSize属性
3、做个具体例子看看。

--  作者:qhczy
--  发布时间:2010/10/29 9:04:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.rar

 

 

BT3...

Y2金额列显示不了,另外图例里的series 0表示什么?怎么修改啊?

数据标示,Y2也要显示出来。

另外我试了一下,把月份的数据类型改为短整型就会报错,怎么让它在短整的时候不再报错呢?

 

 

Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart.VisualEffect = True \'加上这一行,让你的图表更漂亮
Chart.ChartType = ChartTypeEnum.xyplot \'图表1类型该为Bar(条形)
\'Chart.ChartType2 = ChartTypeEnum.XYPlot \'图表2类型该为线形
Chart.DataSource = "库存表" \'设置绑定表
Chart.SeriesList.Clear() \'清除图表原来的图系
Series = Chart.SeriesList.Add() \'给图表1增加一个图系
Series = Chart.SeriesList.Add() \'增加一个图系
series.marksize= 2 \'数据标记点的大小
Series.TooltipText = "数量= {#YVAL}"
Series.Text = "数量"
Series.X.DataField = "月份" \'X轴绑定到产品列
Series.Y.DataField = "数量" \'Y轴绑定到数量列
\'\'Series.Y1.DataField = "金额" \'Y轴绑定到金额列

Chart.SeriesList2.Clear() \'清除图表原来的图系
Series = Chart.SeriesList2.Add() \'给图表2增加一个图系
series.marksize= 2 \'数据标记点的大小
Series.Text = "金额(元)"
Series.X.DataField = "月份" \'X轴绑定到产品列
Series.Y2.DataField = "金额" \'Y轴绑定到数量列
Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Chart.AxisX.Text = "月份"
Chart.AxisY.Text = "数量"
Chart.AxisY2.Text = "金额"

Chart.BarClusterWidth = 10
Chart.BarClusterWidth2 = 10
Chart.AxisX.AnnoRotation = - 45 \'X轴标示逆时针旋转45度
Series.TooltipText = "金额 = {#Y2VAL} "


--  作者:czy
--  发布时间:2010/10/29 11:33:00
--  

强烈建议你好好看看帮助,你这样东拼一段本拼一段的代码不行的。

 

Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Chart = e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart.VisualEffect = True \'加上这一行,让你的图表更漂亮
\'Chart.ChartType = ChartTypeEnum.Bar \'图表1类型该为Bar(条形)
Chart.ChartType = ChartTypeEnum.XYPlot \'图表2类型该为线形
Chart.ChartType2 = ChartTypeEnum.XYPlot \'图表2类型该为线形
Chart.DataSource = "库存表" \'设置绑定表
Chart.SeriesList.Clear() \'清除图表原来的图系
Series = Chart.SeriesList.Add() \'给图表1增加一个图系
Series.DataLabelText = "{#YVAL}"
Series.Text = "数量"
Series.X.DataField = "月份" \'X轴绑定到产品列
Series.Y.DataField = "数量" \'Y轴绑定到数量列
Chart.SeriesList2.Clear() \'清除图表原来的图系
Series = Chart.SeriesList2.Add() \'给图表2增加一个图系
Series.DataLabelText = "{#YVAL}"
Series.Text = "金额"
Series.X.DataField = "月份" \'X轴绑定到产品列
Series.Y.DataField = "金额" \'Y轴绑定到数量列
Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)
Chart.AxisY.Text = "数量"
Chart.AxisY2.Text = "金额"


--  作者:qhczy
--  发布时间:2010/10/29 12:58:00
--  
简洁明了....我再看看帮助文件.
谢谢!