如何显示LineChart控件

本文关键字:LineChart 控件 显示 何显示 | 更新日期: 2023-09-27 18:10:43

我想根据下拉列表控件显示折线图。

当我选择这个下拉列表中的一个值时,折线图将显示我的值列组与我的下拉列表中的值的平均值。

列Entite是Varchar类型,avancementquantiatift1是十进制(3,2)类型。

当我选择下拉列表的值时,没有显示。

下面是我的代码:

 protected void entite_SelectedIndexChanged(object sender, EventArgs e)
        {
            string query = string.Format("select Entite, AVG(AvancementQuantitatifT1 * 100) FROM reponse WHERE Entite = '{0}' GROUP BY Entite", NomEntite.SelectedItem.Value);
            DataTable dt = GetData(query);
            string[] x = new string[dt.Rows.Count];
            decimal[] y = new decimal[dt.Rows.Count];
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                x[i] = dt.Rows[i][0].ToString();
                y[i] = Convert.ToInt32(dt.Rows[i][1]);
            }
            LineChart1.Series.Add(new AjaxControlToolkit.LineChartSeries { Data = y });
            LineChart1.CategoriesAxis = string.Join(",", x);
            LineChart1.ChartTitle = string.Format("{0}", NomEntite.SelectedItem.Value);
            if (x.Length > 3)
            {
                LineChart1.ChartWidth = (x.Length * 75).ToString();
            }
            LineChart1.Visible = true;
        }

My SQL Query works fine in SQL Management studio.

编辑

我的dt表截图:https://i.stack.imgur.com/VotIt.png

如何显示LineChart控件

首先,修改/调试查询字符串:

string query = "SELECT Entite, AVG(AvancementQuantitatifT1 * 100) As AvrVal FROM reponse WHERE Entite = '" + (sender As ComboBox).Text + "' GROUP BY Entite") 

并检查DataTable dt是否包含记录(在string[] x = new string[dt.Rows.Count]行插入断点,然后将光标移动到dt并使用TableVisualization选项)。

注意:响应 -它是正确的表名吗?

其余的将取决于这个重要步骤的结果(确保DataTable dt确实包含记录而不是null;根据你的截图,它似乎是空的),Rgds,