У меня есть Basic Row
Live Chart, и я подключил его к базе данных SQL Server. Мне удалось заставить столбцы заполняться, но я не могу заставить Labels
заполнить его соответствующими точками данных.
Когда мой запрос выполняется в SQL, он показывает:
Вот мой код для Basic Row
диаграммы
private void ChartValues()
{
// Defines the variable for differnt lines.
List<double> allValues = new List<double>();
List<double> someValues = new List<double>();
try
{
SqlConnection connection = new SqlConnection("Data Source=WINDOWS-B1AT5HC\\SQLEXPRESS;Initial Catalog=CustomerRelations;Integrated Security=True;");
string selectQuery = ("SELECT DATENAME(MONTH, OPENED) as MonthName, COUNT(CASE WHEN REV_CLS = 2 THEN 1 END) AS Commercial, COUNT(CASE WHEN REV_CLS <> 2 THEN 1 END) AS Residential FROM hb_Disputes CROSS JOIN Users WHERE(Users.TX_EMPLOYEE = 'Ian Mark') AND(YEAR(hb_Disputes.OPENED) = YEAR(GETDATE())) GROUP BY DATENAME(MONTH, OPENED)");
connection.Open();
SqlCommand command = new SqlCommand(selectQuery, connection);
SqlDataReader sqlReader = command.ExecuteReader();
while (sqlReader.Read())
{
// Select the values from the columns selected
allValues.Add(Convert.ToDouble(sqlReader["Residential"]));
someValues.Add(Convert.ToDouble(sqlReader["Commercial"]));
}
// Starts new line series.
SeriesCollection = new SeriesCollection
{
new RowSeries
{
Title = "Residential",
Values = new ChartValues<double>(allValues),
},
new RowSeries
{
Title = "Commercial",
Values = new ChartValues<double>(someValues),
}
};
Labels = new[]
{
//I'm not sure what code needs to go here
};
Formatter = value => value.ToString("N");
// Sets the graph X Value.
SeriesCollection[1].Values.Add(5d);
DataContext = this;
connection.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}