以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]图表图系叠加无法观看  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=178579)

--  作者:xiangyushi
--  发布时间:2022/7/11 7:58:00
--  [求助]图表图系叠加无法观看
在生成图表的代码中。
添加了两句清除图表的代码,但不起作用。
在点击按钮时出现无限叠加,无法观看。
请大师老师指导,谢谢
图片点击可在新窗口打开查看此主题相关图片如下:mmexport1657497186948.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2022/7/11 8:43:00
--  
贴出完整代码。http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=150626
[此贴子已经被作者于2022/7/11 8:43:18编辑过]

--  作者:xiangyushi
--  发布时间:2022/7/11 9:27:00
--  


Dim t As Table = e. Form. Controls("Table月计划"). Table
Dim Chart As WinForm Chart 定义一个图表变量
Dim Series As WinForm. ChartSeries\'定义一个图系变量
Chart=e.Form.Controls("Chart月计划")\'引用窗口中的图表Chart. SeriesList. Clear() \'清除图表原来的图系
Chart. AxisX. ClearValueLabel \'清除图表原来的图系标识Chart.ChartType=ChartTypeEnum.Bar\'设置图表类型
Chart.VisualEffect=True\'加上这一行,让你的图表更漂亮
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)("月份")&“月”)’指定字符表示Series. FillColor = Color. blue
’设置条形图的填充颜色
’设置条形图的填充颜色
Series. DataLabelForeColor = Color. black
Series. DataLabelCompass

Series. DataLabelText =" {#YVAL}"
Series. DataLabelForeColor = Color. blue

Next
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)("月份")&"月")\'指定字符表示Series. FillColor = Color. green
设置条形图的填充颜色
Series. DataLabelForeColor
’设置条形图的填充颜色
= Color. black
Series. DataLabelCompass = 0
Series. DataLabelText="{#YVAL}"

Series. DataLabelForeColor = Color. green
Next
Chart.AxisX.AnnoWithLabels=True\'启用字符标示
,

--  作者:xiangyushi
--  发布时间:2022/7/11 9:40:00
--  
t. DataTable. DataRows. Clear
找到问题了,原因是没有清空数据表。
最后增加上述一句代码,解决了问题。

谢谢。