学习了Chart控件的初步使用方法,生成柱形图和饼图。
<asp:Chart ID="Chart1" runat="server" Width="553px" Height="403px"> <Series> <asp:Series LegendText="得票数" Name="Series1" IsValueShownAsLabel="True" XValueMember="选择项" YValueMembers="数量" Legend="Legend1" Color="Red" Font="Microsoft Sans Serif, 12pt" LabelForeColor="Green"> </asp:Series> <asp:Series ChartArea="ChartArea2" ChartType="Pie" Legend="Legend2" Name="Series2" IsValueShownAsLabel="True" XValueMember="选择项" YValueMembers="数量" XValueType="String"> </asp:Series> </Series> <ChartAreas> <asp:ChartArea Name="ChartArea1"> <AxisY Title="得票数"> <LabelStyle ForeColor="Blue" /> </AxisY> <AxisX Title="课程"> <MajorGrid LineColor="Yellow" /> <%--线条颜色--%> </AxisX> </asp:ChartArea> <asp:ChartArea Name="ChartArea2"> <AxisY Title="得票数"> <LabelStyle ForeColor="Blue" /> </AxisY> <AxisX Title="课程"> <MajorGrid LineColor="Yellow" /> <%--线条颜色--%> </AxisX> </asp:ChartArea> </ChartAreas> <Legends> <asp:Legend Name="Legend1"> </asp:Legend> <asp:Legend Name="Legend2"> <Position X="80" Y="50" Height="20" Width="30" /> </asp:Legend> </Legends> <Titles> <asp:Title Name="Title1" Text="投票结果"> </asp:Title> </Titles> </asp:Chart>
后台代码:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Chart1.DataSource = GetTable();
//#XVAL表示数据点的X值,#YVAL表示数据点的Y值 Chart1.Series[1].Label = "课程:#VALX,得票数:#VALY";
//显示在饼图外面 Chart1.Series[1].CustomProperties = "PieLabelStyle=Outside"; Chart1.Series[1].LabelToolTip = "#VALX: #VALY";
//自定义图例 Chart1.Series[1].LegendText = "#VALX"; } } public DataTable GetTable() { string collectionstring = @"Data Source=.sqlexpress;Initial Catalog=OnlineVoteDB;User ID=sa;Pwd=xx;Persist Security Info=True;"; SqlConnection conn = new SqlConnection(collectionstring); SqlDataAdapter sad = new SqlDataAdapter("select name as 选择项,votecount as 数量 from [Items] where [SubjectID]=13 ", conn); DataSet ds = new DataSet(); sad.Fill(ds, "table"); conn.Close(); return ds.Tables[0]; } }
效果: