using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ZedGraph;
namespace Chart
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
GraphPane myPane = null;
myPane = zedGraphControl1.GraphPane;
myPane.CurveList.Clear();
myPane.GraphObjList.Clear();
//資料來源 處理
int[] x = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int[] y = { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
//資料填充
PointPairList list = new PointPairList();
//清除清單
list.Clear();
for (int i = 0; i < x.Length; i++)
{
list.Add(x[i], y[i]);
}
//建立長條圖
BarItem myCurve = myPane.AddBar("測試用標題", list, Color.Blue);
//每個長條圖 都顯示個別數據
BarItem.CreateBarLabels(myPane, false, "f0");
//介面屬性處理
myPane.Title.IsVisible = false;
//X 軸 Title 文字Size
myPane.XAxis.Title.FontSpec.Size = 10;
string[] xLabel = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" };
//X軸刻度資料來源
myPane.XAxis.Scale.TextLabels = xLabel;
//X軸刻度資料型態
myPane.XAxis.Type = AxisType.Text;
//X軸字型大小
myPane.XAxis.Scale.FontSpec.Size = 16;
//Y 軸的 Title
myPane.YAxis.Title.Text = "Y軸名稱";
//Y軸Label大小
myPane.YAxis.Title.FontSpec.Size = 16;
//Y軸字型大小
myPane.YAxis.Scale.FontSpec.Size = 10;
myPane.YAxis.MajorGrid.IsVisible = true;
myPane.YAxis.MajorGrid.Color = Color.Black;
//Chart 填色
myPane.Chart.Fill = new Fill(Color.White, Color.LightGoldenrodYellow, -45F);
//外部 填色
myPane.Fill = new Fill(Color.White, Color.FromArgb(220, 220, 255), -45F);
//圖例放置位置
myPane.Legend.Position = ZedGraph.LegendPos.InsideTopRight;
myPane.Legend.FontSpec.Size = 10;
//畫面產生
zedGraphControl1.AxisChange();
//重要! 若資料有變更時 畫面重整
zedGraphControl1.RestoreScale(myPane);
}
}
}
參考資料:
http://kuomingwang.blogspot.tw/2011/12/c-zedgraph-chart.html
