1

ASP.NET C# にデータバインドされたグラフがあります。データバインドされたフィールドの 1 つはテキストで、もう 1 つは値です。凡例に円グラフのテキストを表示し、値でグラフの形成方法を決定し、円グラフの各部分にラベルとして表示したいと考えています。

これが私がこれまでに持っているコードです:

      <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>

編集

ここに画像がありますが、理解しやすいかもしれません。赤いボックス内のラベルは、値の数値を表示するために変更したいラベルです。

チャート

4

1 に答える 1

1

この答えが少し遅すぎるかもしれないことは承知しています。そのために私を揚げないでください:)

データをバインドする方法はわかりませんが、Microsoft Chart for Windows Forms Samples Environment をダウンロードしてインストールしました。そこから多くのことを学ぶことができました。

これは、 MSDN アーカイブから asp.net サンプルも入手できるリンクです。

また、ILSpyを使用して System.Windows.Forms.DataVisualization.Charting 名前空間のコードを調べています。このようにして、文書化されていない多くのことを見つけることができます。

最後に、問題のアイデアを引き出して asp.net マークアップに書き込むことができる winform コード サンプルを次に示します。

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 Label\nLabel Line #2";

// Set data point label
chart1.Series["Series1"].Points[2].Label = "My Point Label\nLabel Line #2";

それが役立つことを願っています。

于 2011-07-28T18:14:06.157 に答える