Мне нужно создать столбчатую диаграмму с накоплением, как показано на рисунке.Ось X: Имя компонента Ось Y: Количество ошибок Стеки: Для каждого компонента мне нужно создать составные диаграммы, которые сообщают мне: ---> Для каждой категории компонентов (Аудио / Видео) мне нужно сказать, что у меня есть номер xошибок HIGH, MEDIUM, LOW, SHOWSTOPPER.
У меня есть данные в формате: Категория NAME ||Тип ошибки: цифры Тип ошибки: цифры Тип ошибки: цифры Тип ошибки: цифры
Пример данных: AUDIO :: => высокий: 30 средний: 17 низкий: 1 видео: => высокий: 1 периферийный ::=> средний: 15 высокий: 14 низкий: 1 showtopper: 1 SENSOR :: => средний: 2
Эти данные, показанные выше, были созданы с некоторыми запросами LINQ.Так что нет в словаре.Код для создания данных выше:
var dbQuery = from bug in RawListData
group bug by new { bug.category, bug.customer_priority } into grouped
select new {
Category = grouped.Key.category,
Priority = grouped.Key.customer_priority,
Count = grouped.Count()
};
var query = dbQuery.ToLookup(result => result.Category,
result => new { result.Priority, result.Count });
foreach (var result in query)
{
//Console.WriteLine("{0}: ", result.Key);
System.Diagnostics.Debug.WriteLine(" : ", result.Key);
foreach (var subresult in result)
{
//Console.WriteLine(" {0}: {1}", subresult.Priority, subresult.Count);
System.Diagnostics.Debug.WriteLine(" {0}: {1}", subresult.Priority, subresult.Count);
}
}
Обратите внимание, что в некоторых категориях нет значений для каждого из типов ошибок.
Я знаю, как это сделать в XAML.Я хочу сделать это в «код позади».Любые указатели на это будут оценены.Код, который я использовал для создания графика, прост: XAML:
<asp:Chart ID="Chart2" runat="server" ImageLocation="~/FolderLocation/Chart_#SEQ(1000,0)" ImageStorageMode="UseImageLocation" ImageType="Png" IsSoftShadows="true">
<series>
<asp:Series Name="Championships" YValueType="Int32" ChartType="StackedColumn" >
<Points>
<asp:DataPoint AxisLabel="Audio" YValues="17" />
<asp:DataPoint AxisLabel="Video" YValues="15" />
<asp:DataPoint AxisLabel="Peripheral" YValues="6" />
</Points>
</asp:Series>
<asp:Series Name="Championships2" YValueType="Int32" ChartType="StackedColumn" >
<Points>
<asp:DataPoint AxisLabel="Audio" YValues="2" />
<asp:DataPoint AxisLabel="Video" YValues="5" />
<asp:DataPoint AxisLabel="Peripheral" YValues="16" />
</Points>
</asp:Series>
<asp:Series Name="Championships3" YValueType="Int32" ChartType="StackedColumn" >
<Points>
<asp:DataPoint AxisLabel="Audio" YValues="10" />
<asp:DataPoint AxisLabel="Video" YValues="3" />
<asp:DataPoint AxisLabel="Peripheral" YValues="16" />
</Points>
</asp:Series>
<asp:Series Name="Championships4" YValueType="Int32" ChartType="StackedColumn" >
<Points>
<asp:DataPoint AxisLabel="Audio" YValues="10" />
<asp:DataPoint AxisLabel="Video" YValues="3" />
<asp:DataPoint AxisLabel="Peripheral" YValues="16" />
</Points>
</asp:Series>
</series>
<chartareas>
<asp:ChartArea Name="ChartArea1">
<Area3DStyle Enable3D="True" />
</asp:ChartArea>
</chartareas>
</asp:Chart>
Я также хотел бы отобразить количество ошибок в каждом компоненте стека.
Как создать эту диаграмму с накоплением с помощьюписать код, а не в XAML?