我正在创建一个小程序,它通过图表向我们显示按月计算的总销售额,但我的图表不够详细,例如它显示 2012'07 的总和在 20 到 40 之间,但我需要确切的值。 (32,4)
需要帮助。
代码
private void formGraph()
{
string database, host, user, pass, sqlParams, sqlQuery;
string resultPassword = String.Empty;
database = "";
host = "localhost";
user = "";
pass = "";
sqlParams = "Database=" + database + ";Data Source=" + host + ";User Id=" + user + ";Password=" + pass;
sqlQuery = "SELECT YEAR(`importdate`) as 'Year', MONTH(`importdate`) as 'Month', SUM(`price`) as 'Sum' FROM `data` GROUP BY MONTH(`importdate`), YEAR(`importdate`) ORDER BY YEAR(`importdate`), MONTH(`importdate`) ASC LIMIT 12";
MySqlConnection sqlConnection = new MySqlConnection(sqlParams);
MySqlCommand sqlCommand = new MySqlCommand(sqlQuery, sqlConnection);
try
{
sqlConnection.Open();
MySqlDataReader sqlReader = sqlCommand.ExecuteReader();
if (sqlReader.HasRows)
{
while (sqlReader.Read())
{
string Sum = sqlReader["Sum"].ToString();
if (Sum.Contains(",")) Sum = Sum.Replace(",", ".");
if (Sum == "0") Sum = "1";
chart1.Series.Add(sqlReader["Year"].ToString() + '\'' + sqlReader["Month"].ToString());
chart1.Series[sqlReader["Year"].ToString() + '\'' + sqlReader["Month"].ToString()].Points.AddY(Sum);
//sqlReader["Year"].ToString() + '"' + sqlReader["Month"].ToString()
}
}
}
catch (MySqlException sqlError)
{
MessageBox.Show("Error", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
sqlConnection.Close();
}
}
最佳答案
您需要浏览所有系列并将 IsValueShownAsLabel
属性设置为 true。像这样,做第一个:
Chart1.Series[0].IsValueShownAsLabel = true;
希望这对你有帮助!
关于c# - Visual Studio、C#详图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14186796/