簡體   English   中英

圖表,顯示列表中的數據

[英]Chart, display data from a list

我試圖在asp.net(aspx視圖)中顯示圖。在我的aspx文件中,我有以下內容:

<asp:Chart ID="Chart1" runat="server" OnLoad="Chart1_Load">
    <series>
        <asp:Series Name="Series1">
              <Points> <asp:DataPoint AxisLabel="Test 1" YValues="10" />
        <asp:DataPoint AxisLabel="Test 2" YValues="20" />

        <asp:DataPoint AxisLabel="Test 3" YValues="30" />
        <asp:DataPoint AxisLabel="Test 4" YValues="40" />
            </Points>
        </asp:Series>
    </series>
    <chartareas>
        <asp:ChartArea Name="ChartArea1">
        </asp:ChartArea>
    </chartareas>
</asp:Chart>

而且我還有一個將整數值轉換為aspx的列表。

<%
   List<int> timeList = new List<int>();
%>

然后在aspx中將數據放入LIst。

我的問題是我想要從列表中獲取值,而不是YValues="30"

我在實施該程序時遇到問題。 我花了很多時間試圖找到這個問題。

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        DataTable dt = GetTestData();
        LoadChartCurrencyTotal(dt);
    }
}

private void LoadChartCurrencyTotal(DataTable initialDataSource)
{
    for (int i = 1; i < initialDataSource.Columns.Count; i++)
    {
        Series series = new Series();
        foreach (DataRow dr in initialDataSource.Rows)
        {
            int y = (int)dr[i];
            series.Points.AddXY(dr["Data"].ToString(), y);
        }
        Chart1.Series.Add(series);
    }
}

private DataTable GetTestData()
{
    DataTable dt = new DataTable();
    dt.Columns.Add("Data", Type.GetType("System.String"));
    dt.Columns.Add("Value1", Type.GetType("System.Int32"));
    dt.Columns.Add("Value2", Type.GetType("System.Int32"));
    dt.Columns.Add("Value3", Type.GetType("System.Int32"));
    DataRow dr1 = dt.NewRow();
    dr1["Data"] = "series1";
    dr1["Value1"] = 32;
    dr1["Value2"] = -2;
    dr1["Value3"] = 46;
    dt.Rows.Add(dr1);
    DataRow dr2 = dt.NewRow();
    dr2["Data"] = "series2";
    dr2["Value1"] = -62;
    dr2["Value2"] = 0;
    dr2["Value3"] = 99;
    dt.Rows.Add(dr2);
    DataRow dr3 = dt.NewRow();
    dr3["Data"] = "series3";
    dr3["Value1"] = 19;
    dr3["Value2"] = 23;
    dr3["Value3"] = 98;
    dt.Rows.Add(dr3);
    return dt;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM