Foxtable(狐表)用户栏目专家坐堂 → 图表问题


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

主题:图表问题

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/16 16:11:00 [显示全部帖子]

 

http://www.foxtable.com/webhelp/scr/0970.htm

 

示例二,

 

        For r As Integer = 0 To t.Rows.Count - 1
            Series.X(r) = r
            Series.Y(r) = t.Rows(r)(c.Name)

        Next

 

改成

 

For r As Integer = 0 To t.GetCheckedRows.count - 1
    Series.X(r) = r
    Series.Y(r) = t.GetCheckedRows(r)(c.Name)
Next


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/16 17:39:00 [显示全部帖子]

Series.Length = t.Rows.Count '设置图系的长度

 

改成

 

Series.Length = t.GetCheckedRows.count


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/16 17:40:00 [显示全部帖子]

 如果还有问题,做个实例上来。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/16 19:47:00 [显示全部帖子]

哦,理解错你的意思了。

 

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("表AA") '定义一个变量t引用数据表
Dim dt As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
Dim ls As new List(Of String)
If dt.Text = "" Then
    For Each c As Col In t.Cols
        If c.name <> "开标日期" Then        ls.add(c.name)
    Next
Else
    ls.AddRange( dt.text.Split(","))
End If
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
chart.AxisX.ClearValueLabel
Chart.SeriesList.Clear() '清除图表原来的图系
t.sort = "开标日期"
For Each c As String In ls
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Text = c '设置图系的标题
    Series.Length = t.Rows.Count '设置图系的长度
    For r As Integer = 0 To t.Rows.Count - 1
        Series.X(r) = r
        Series.Y(r) = t.Rows(r)(c)
    Next
    Series.FitType = FitTypeEnum.Spline  '采用平滑线条
Next
For r As Integer = 0 To t.Rows.Count - 1
    Chart.AxisX.SetValueLabel(r, Format(t.Rows(r)("开标日期"),"MM-dd")) '指定字符表示
Next
Chart.AxisX.AnnoWithLabels = True '启用字符标示
'Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.South '图列显示在南方(底端)
Chart.AxisX.AnnoRotation = - 45 'X轴标示逆时针旋转45度


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 2:17:00 [显示全部帖子]

Dim Chart As WinForm.Chart '定义一个图表变量
Dim Series As WinForm.ChartSeries '定义一个图系变量
Dim t As Table = Tables("代理投标测算_Table1") '定义一个变量t引用数据表
Dim dt As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
Dim ls As new List(Of String)
If dt.Text = "" Then
    For Each c As Col In t.Cols
        If c.name <> "开标日期" Then
            ls.add(c.name)
        End If
    Next
Else
    ls.AddRange( dt.text.Split(","))
End If
Chart = e.Form.Controls("Chart1") ' 引用窗口中的图表
chart.AxisX.ClearValueLabel
Chart.SeriesList.Clear() '清除图表原来的图系
t.sort = "开标日期"
For Each c As String In ls
    Series = Chart.SeriesList.Add() '增加一个图系
    Series.Text = c '设置图系的标题
    Series.Length = t.Rows.Count '设置图系的长度
    Dim pval As Double = 0
    For r As Integer = 0 To t.Rows.Count - 1
        If t.Rows(r)(c) = 0 Then
            For i As Integer = r+1 To t.Rows.count-1
                If t.Rows(i)(c) > 0 Then
                    Series.X(r) = r
                    pval= pval+(t.rows(i)(c)-pval)/(i-r+1)
                    Series.Y(r) = Round2(pval * 100,2)
                    Exit For
                End If
            Next
        Else
            pval = t.Rows(r)(c)
            Series.X(r) = r
            Series.Y(r) = Round2(pval * 100,2)
        End If
    Next
    Series.FitType = FitTypeEnum.Spline  '采用平滑线条
Next
For r As Integer = 0 To t.Rows.Count - 1
    Chart.AxisX.SetValueLabel(r, Format(t.Rows(r)("开标日期"),"MM-dd")) '指定字符表示
Next
Chart.AxisX.AnnoWithLabels = True '启用字符标示
'Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
Chart.LegendVisible = True '显示图列
Chart.LegendCompass= CompassEnum.South '图列显示在南方(底端)
Chart.AxisX.AnnoRotation = - 45 'X轴标示逆时针旋转45度
Series.DataLabelText = "{#YVAL}%" '数据标示
Chart.AxisX.AnnoFormatString = "00.0%" '设置坐标轴的标示格式符号,指定日期标示格式

 回到顶部