以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  图表 当前行数据  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=140541)

--  作者:yifan3429
--  发布时间:2019/9/7 21:21:00
--  图表 当前行数据

Dim Chart  As WinForm.Chart  \'定义一个图表变量
Dim
Series As WinForm.ChartSeries \'定义一个图系变量
Dim
t As TableTables("统计表1") \'定义一个变量t引用数据表
Chart
= e.Form.Controls("Chart1") \' 引用窗口中的图表
Chart
.VisualEffect = False
Chart
.SeriesList.Clear() \'清除图表原来的图系
For
r As Integer = 0 To t.Rows.count - 1
    Series = Chart.SeriesList.Add() \'增加一个图系
    Series.Text = t.rows(r)("产品"\'设置图系的标题
    Series.Length = t.Cols.Count - 1  \'设置图系的长度
    For c As Integer = 1 To t.Cols.count -1
        Series.X(c - 1) = c - 1
       
Series.Y(c - 1) = t.Rows(r)(c)
        Chart.AxisX.SetValueLabel(c - 1, t.Cols(c).caption)
\'
指定字符表示
   
Next
Next

Chart
.AxisX.AnnoWithLabels = True \'启用字符标示
Chart
.LegendVisible = True \'显示图列
Chart
.LegendCompass= CompassEnum.South  \'图列显示在南方(底端)



图片点击可在新窗口打开查看此主题相关图片如下:企业微信截图_20190907212059.png
图片点击可在新窗口打开查看


以项目ID  每行都有数据变化  希望做成柱形图




[此贴子已经被作者于2019/9/7 21:22:36编辑过]

--  作者:有点蓝
--  发布时间:2019/9/8 21:07:00
--  
Dim Chart As WinForm.Chart \'定义一个图表变量
Dim
 Series As WinForm.ChartSeries \'定义一个图系变量
Chart= Forms(
"窗口1").Controls("Chart1"\' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.Bar 
\'设置图表类型 
Chart.SeriesList.Clear() 
\'清除图表原来的图系
Series = Chart.SeriesList.Add() 
\'增加一个图系
dim str1() as string = {"项目1","项目2",...}
Series.Length = 
str1.length \'新增图系包括10个数据点
Dim t As Table =  Tables("统计表1")
For
 i As integer = 0 to 
str1.length -1 \'指定每个数据点的位置
    Series.X(i) = i \'指定水平坐标
    Series.Y(i) = t.current(str1(i))
 \'垂直坐标用随机数生成
Chart.AxisX.SetValueLabel(istr1(i))
Next
Chart.AxisX.AnnoWithLabels = True \'启用字符标示

--  作者:yifan3429
--  发布时间:2019/9/8 22:43:00
--  
选择不同的行怎么刷新图表数据呢
我是模拟的

CurrentChanged

Dim btn As WinForm.Button = Forms("窗口1").Controls("Button1")
btn.PerformClick()

[此贴子已经被作者于2019/9/8 22:48:50编辑过]

--  作者:有点蓝
--  发布时间:2019/9/8 22:58:00
--  
就这样用,有啥问题?