以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]chart编写求助  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90271)

--  作者:zj6430
--  发布时间:2016/9/8 16:47:00
--  [求助]chart编写求助

我现在有表格如下:

表A:绩效等级表

工号   一月   二月  三月...........十二月

11      A      B      C                  A

12      B      C      A                  C

13      A+    A      B                  C

14      C      B      B                  B

15      A      D      B                  B

16      D      A      B                  A

 

表B:绩效积分表

工号   一月   二月  三月...........十二月

11     2.8    2.5    2.0               2.8

12     2.5    2.0    2.8               2.0

13     3      2.8     2.5               2.0

14     2.0    2.5    2.5               2.5

15     2.8     0      2.5               2.5

16     0       2.8    2.5               2.8

 

表C:部门均分表

部门    一月均值   二月均值  三月均值    ......十二月均值

A          2.5          2.48         3                  2.8

B          2.0          2.35        2.42              2.35

C          2.52        2.49        2.38              2.32

现在图表如下:

 

 

 

工号:

    工号搜索

 

                                                 chart1

查询按钮

 

清除查询

 

    

 

                       chart2

 

现在希望通过工号搜索到具体人员,chart1绘出改名员工12各月的绩效情况,线图

chart2同时绘出该员工个人12各月绩效线图和所在二级部门对应12各月均值的线图

 

该怎么编码,从帮助文件没有合适的代码,楼主指教!!!


--  作者:zj6430
--  发布时间:2016/9/8 16:48:00
--  
忘了说了CHART1要求是线图,但是各个数据点显示的是A+/A/B/C/D等级信息,而不是绩效分值信息
--  作者:有点蓝
--  发布时间:2016/9/8 17:17:00
--  
上传有数据的例子测试
--  作者:zj6430
--  发布时间:2016/9/9 10:29:00
--  
楼主上传在附件中,附件中有窗口希望通过窗口搜索人员,chart1反应该员工本年度绩效情况(线图),chart2反应该员工各月绩效情况和所在二级部门的绩效均值情况(线图),请帮忙看看怎么才能实现?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:有点蓝
--  发布时间:2016/9/9 11:59:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


--  作者:zj6430
--  发布时间:2016/9/9 22:19:00
--  
楼主我看了,跟我所想的还有一定差距,在CHART2中要存在两个图系,第一个是通过查询在绩效积分表中引用的被查询人的绩效积分曲线,第二个是所在部门的均值曲线
--  作者:有点蓝
--  发布时间:2016/9/10 9:05:00
--  
Dim dict As new Dictionary(of String,Integer)
dict.Add("A",1)
dict.Add("B",2)
dict.Add("C",3)
dict.Add("D",4)
Dim yue() As String = {"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"}
Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Dim dr As DataRow = DataTables("基层人员年度绩效汇总审批表").Find("工号=\'" & e.Form.Controls("TextBox1").Text & "\'")
If dr IsNot Nothing Then
    Chart= e.Form.Controls("Chart1") \' 引用窗口中的图表
    Chart.SeriesList.Clear() \'清除图表原来的图系
    Series = Chart.SeriesList.Add() \'增加一个图系
    Series.Length = 12 \'图系的数据点数等于表的行数
    Chart.AxisY.Max = 4
    Chart.AxisY.MinorTick = False
    Chart.AxisY.AnnoWithLabels = True
    For i As Integer = 0 To 11  \'指定每个数据点的位置
        Series.X(i) = i+1 \'指定水平坐标
        If dr.IsNull(yue(i)) = False Then Series.Y(i) = dict(dr(yue(i))) \'指定垂直坐标
    Next
    Dim j As Integer = 1
    For Each key As String In dict.Keys
        Chart.AxisY.SetValueLabel(j, key)
        j += 1
    Next
    Dim dr2 As DataRow = DataTables("部门均值统计表").Find("二级部门=\'" & dr("二级部门")& "\'")
    If dr2 IsNot Nothing Then
        Chart= e.Form.Controls("Chart2") \' 引用窗口中的图表
        Chart.SeriesList.Clear() \'清除图表原来的图系
        Series = Chart.SeriesList.Add() \'增加一个图系
        Series.Length = 12 \'图系的数据点数等于表的行数
        Chart.AxisY.Max = 4
        Chart.AxisY.MinorTick = False
        Chart.AxisY.AnnoWithLabels = True
        For i As Integer = 0 To 11  \'指定每个数据点的位置
            Series.X(i) = i+1 \'指定水平坐标
            If dr.IsNull(yue(i)) = False Then Series.Y(i) = dict(dr(yue(i))) \'指定垂直坐标
        Next
        j=1
        For Each key As String In dict.Keys
            Chart.AxisY.SetValueLabel(j, key)
            j += 1
        Next
     Chart.SeriesList2.Clear() 
        Dim Series2 As WinForm.ChartSeries = Chart.SeriesList2.Add() \'增加一个图系
        Series2.Length = 12
        For i As Integer = 0 To 11  \'指定每个数据点的位置
            Series2.X(i) = i+1 \'指定水平坐标
            Series2.Y(i) = dr2(yue(i) & "_均值") \'指定垂直坐标
        Next
    End If
End If