#c# #asp.net #charts #databound
#c# #asp.net #Диаграммы #привязка к базе данных
Вопрос:
У меня есть диаграмма привязки к базе данных в ASP.NET C #. Одно из полей привязки к базе данных является текстовым, а другое — значением. Я хотел бы, чтобы легенда отображала текст для круговой диаграммы, и я хотел бы, чтобы значение определяло, как формируется диаграмма, а также отображалось в виде метки на каждой части круговой диаграммы.
Вот код, который у меня есть на данный момент:
<asp:Chart ID="consignedChart" runat="server" DataSourceID="SqlDataSource4"
BackColor="LightSlateGray" Palette="None"
PaletteCustomColors="LightSeaGreen; SteelBlue" Width="400px" >
<Series>
<asp:Series Name="Series1" ChartType="Pie" XValueMember="Owner"
YValueMembers="TotalValue" Legend="Legend1" >
</asp:Series>
</Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1" Area3DStyle-Enable3D="true" BackColor="LightSlateGray">
<Area3DStyle Enable3D="True" LightStyle="Realistic"/>
</asp:ChartArea>
</ChartAreas>
<Legends>
<asp:Legend Name="Legend1">
</asp:Legend>
</Legends>
</asp:Chart>
Редактировать
Вот изображение, оно может облегчить понимание. Метки в красных полях — это те, которые я хочу изменить, чтобы отобразить номер значения.
Ответ №1:
Я знаю, что этот ответ может прийти слишком поздно, пожалуйста, не поджаривайте меня за это 🙂
Я не уверен, как вы привязываете свои данные, но я скачал и установил среду Microsoft Chart для Windows Forms Samples, и я мог бы многому из этого научиться.
Вот ссылка, по которой вы также можете получить asp.net примеры из архивов MSDN.
Я также использую ILSpy для просмотра кода в системе.Windows.Формы.Визуализация данных.Пространство имен для построения диаграмм. Таким образом, вы можете найти множество недокументированных вещей.
Наконец, вот некоторый пример кода winform, из которого вы могли бы извлечь некоторую идею для вашей проблемы, а затем записать ее в asp.net разметка:
using System.Windows.Forms.DataVisualization.Charting;
...
// Show data points values as labels
chart1.Series["Series1"].IsValueShownAsLabel = true;
// Set axis label
chart1.Series["Series1"].Points[2].AxisLabel = "My Axis LabelnLabel Line #2";
// Set data point label
chart1.Series["Series1"].Points[2].Label = "My Point LabelnLabel Line #2";
Надеюсь, это поможет.
Комментарии:
1. Я действительно переключился на элементы управления Telerik и решил проблему с их управлением, но спасибо вам за ваш пост, который, кажется, отвечает на мой вопрос.