使用MSChart元件制作1、確認.NET Framework是 3.5 SP1 以及以上版本
2、MSChart_VisualStudioAddOn.exe(開發環境安裝後才能在工具箱裏面看到)
3、MSChartLP_chs.exe(語言包)
4、MSChart.exe
前臺代碼:
ChartArea:畫圖區域,所有的圖型都只會在這裏面呈現(方式有線條、圓柱等等)
Legend:畫圖區域中各圖的圖例說明
<asp:Chart ID="Chart1" Width="850px" runat="server">
<ChartAreas>
<asp:ChartArea Name="X-RatioArea" BackColor="#F1F1F2" BackImageAlignment="Center">
</asp:ChartArea>
</ChartAreas>
<Legends>
<aspegend Name="Legend1" Alignment="Center" Docking="Bottom">
</aspegend>
</Legends>
</asp:Chart>
後臺代碼:
1、圖例表頭
string strChartTitle ="實例";
Title title = new Title(strChartTitle);
Chart1.Titles.Add(title );
2、資料綁定
Series series1 = new Series("線條說明");
series1.ChartType = SeriesChartType.Line; //數據顯示方式 Line:為折線 Spline:曲線
series1.BorderWidth = 4; //線條寬度
series1.IsVisibleInLegend = true; //是否顯示數據說明
//series1.IsValueShownAsLabel = true; //線條上顯示數據
series1.MarkerStyle = MarkerStyle.Circle; //線條上的數據點標志類型
series1.MarkerSize = 6; //標志的大小
for (int a = 0; a < dtTemp.Rows.Count; a++) //向數據集綁定數據
{
string strDt = DateTime.Parse(dtTemp.Rows[a]["DT"].ToString()).ToString("MM/dd");
object obj = dtTemp.Rows[a]["VALUE"];
series1.Points.AddXY(strDt, obj);
series1.Points[a].ToolTip = "Line:" + dtTemp.Rows[0]["Factory_Name"].ToString() + "\r\nDate:" + strDt + "\r\nValue:" + obj;
}
Chart1.Series.Add(series1);
3、圖表屬性設置
//X,Y坐標線色彩和大小
Chart1.ChartAreas[strChartArea].AxisX.LineColor = Color.White;
Chart1.ChartAreas[strChartArea].AxisY.LineColor = Color.White;
Chart1.ChartAreas[strChartArea].AxisX.LineWidth = 4;
Chart1.ChartAreas[strChartArea].AxisY.LineWidth = 4;
//中間X,Y線條的色彩設置
Chart1.ChartAreas[strChartArea].AxisX.MajorGrid.LineColor = Color.White;//X軸網格線的顏色
Chart1.ChartAreas[strChartArea].AxisX.MajorGrid.Interval = 1;//兩條之間相隔多少條,才呈現
Chart1.ChartAreas[strChartArea].AxisY.MajorGrid.Enabled = false;//隱藏Y軸線條
//設定Y軸線的最大、小值
Chart1.ChartAreas[strChartArea].AxisY.Maximum = 100;
Chart1.ChartAreas[strChartArea].AxisY.Minimum = 0;
//呈現的格式
Chart1.ChartAreas[strChartArea].AxisY.LabelStyle.Format = "0.000";
Chart1.ChartAreas[strChartArea].AxisX.Interval = 1;//每隔多少條線呈現刻度
//圖表兩邊留點空隙
Chart1.ChartAreas[strChartArea].AxisX.IsMarginVisible = true;