Konvertieren einer Datentabelle auf eine Datenstruktur, die von MS gelesen werden Diagrammsteuer gestapelt?
-
29-09-2019 - |
Frage
Ich habe eine Diagramm Steuerung (stacked-Diagramm genauer zu sein), und eine Datentabelle, die 3 Spalten enthält. Ich möchte, dass sie in ein gestapeltes Balkendiagramm binden. unten ist, was die Datentabelle aussieht:
Resource | Queue | HoursWorked
Billy Jones | Projekte - Interne | 234
Billy Jones | Tier-1-Unterstützung | 234
Alan Clark | Projekte - Interne | 123
Alan Clark | Tier-1-Unterstützung | 234
würde ich die Spalte Ressource als x-Achse aufweist, und den Wert (Arbeitsstunde) jede Warteschlange als y-Achse (stacked)
Kann mir jemand helfen? Ich habe gerade die Bindung der Regel versucht, und ich bin immer eine Fehlermeldung, dass es der falsche Datentyp ist.
Danke,
Billy
Lösung
Versuchen Sie, diese heraus für Größe:
DataTable table2 = new DataTable();
table2.Columns.Add("Resource", typeof(string));
table2.Columns.Add("Queue", typeof(string));
table2.Columns.Add("Hoursworked", typeof(int));
table2.Rows.Add("Billy Jones", "Projects - Internal", 234);
table2.Rows.Add("Billy Jones", "Tier 1 Support" , 234);
table2.Rows.Add("Alan Clark", "Projects - Internal" ,123);
table2.Rows.Add("Alan Clark", "Tier 1 Support", 234);
foreach (DataRow row in table2.Rows)
{
string seriesName1 = row["Queue"].ToString();
Series series = new Series(); ;
try {
series = Chart2.Series[seriesName1];
}
catch {
if (series.Name == "") {
Chart2.Series.Add(seriesName1);
Chart2.Series[seriesName1].ChartType = SeriesChartType.StackedColumn;
}
}
Chart2.Series[row["Queue"].ToString()].Points.AddXY(row["Resource"].ToString(), (int)row["Hoursworked"]);
}