MSChart的线图示例

overallchart.ChartAreas[0].AxisX.TitleFont = new Font("Verdana", 10, FontStyle.Bold);
overallchart.ChartAreas[0].AxisY.TitleFont = new Font("Verdana", 10, FontStyle.Bold);
overallchart.ChartAreas[0].AxisY.Title = "Rack Intake Temperature";
overallchart.ChartAreas[0].AxisX.TitleAlignment = StringAlignment.Center;
overallchart.ChartAreas[0].AxisX.Title = "Temperature Sensor Number";
overallchart.ChartAreas[0].AxisX.MajorGrid.LineColor = Color.FromArgb(64, 64, 64, 64);
overallchart.ChartAreas[0].AxisY.MajorGrid.LineColor = Color.FromArgb(64, 64, 64, 64);


overallchart.ChartAreas[0].AxisY.MajorGrid.Enabled = false;
overallchart.ChartAreas[0].AxisX.MajorTickMark.Enabled = true;
overallchart.ChartAreas[0].AxisX.IsMarginVisible = false;
overallchart.ChartAreas[0].AxisY.MajorTickMark.Enabled = false;
overallchart.ChartAreas[0].AxisY.IsStartedFromZero = false;
overallchart.ChartAreas[0].AxisX.IsStartedFromZero = false;


overallchart.Series.Clear();
overallchart.Legends.Clear();

System.Windows.Forms.DataVisualization.Charting.Series line = new System.Windows.Forms.DataVisualization.Charting.Series();

DataView dv = new DataView(data);
dv.Sort = "no asc";

line.Points.DataBindXY(dv, "no", dv, "temperature");
line.XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Int64;
line.ChartArea = "ChartArea1";
line.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline;
line.BorderWidth = 1;
overallchart.Series.Add(line);


overallchart.ChartAreas[0].AxisY.StripLines.Clear();

                            
///min
StripLine min_area_sl = new StripLine();
min_area_sl.BorderDashStyle = ChartDashStyle.NotSet;

min_area_sl.Interval = 0;
min_area_sl.StripWidth = 6;
min_area_sl.IntervalOffset = 59;
min_area_sl.BackColor = Color.FromArgb(120, Color.Gold);
min_area_sl.Text = "";
min_area_sl.TextAlignment = StringAlignment.Far;
min_area_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(min_area_sl);

StripLine min_all_sl = new StripLine();
min_all_sl.BorderDashStyle = ChartDashStyle.NotSet;

min_all_sl.Interval = 0;
min_all_sl.StripWidth = 0.0001;
min_all_sl.IntervalOffset = 65;
min_all_sl.BackColor = Color.FromArgb(120, Color.Black);
min_all_sl.Text = "Min Recommended:65℉";
min_all_sl.TextAlignment = StringAlignment.Far;
min_all_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(min_all_sl);

StripLine min_rec_sl = new StripLine();
min_rec_sl.BorderDashStyle = ChartDashStyle.NotSet;
min_rec_sl.Interval = 0;
min_rec_sl.StripWidth = 0.0001;
min_rec_sl.IntervalOffset = 59;
min_rec_sl.BackColor = Color.FromArgb(120, Color.Black);
min_rec_sl.Text = "Min Allowable:59";
min_rec_sl.TextAlignment = StringAlignment.Far;
min_rec_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(min_rec_sl);


///Max 
StripLine max_area_sl = new StripLine();
max_area_sl.BorderDashStyle = ChartDashStyle.NotSet;

max_area_sl.Interval = 0;
max_area_sl.StripWidth = 10;
max_area_sl.IntervalOffset = 80;
max_area_sl.BackColor = Color.FromArgb(120, Color.Gold);
max_area_sl.Text = "";
max_area_sl.TextAlignment = StringAlignment.Far;
max_area_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(max_area_sl);

StripLine max_all_sl = new StripLine();
max_all_sl.BorderDashStyle = ChartDashStyle.NotSet;

max_all_sl.Interval = 0;
max_all_sl.StripWidth = 0.0001;
max_all_sl.IntervalOffset = 90;
max_all_sl.BackColor = Color.FromArgb(120, Color.Black);
max_all_sl.Text = "Max Allowable:90℉";
max_all_sl.TextAlignment = StringAlignment.Far;
max_all_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(max_all_sl);

StripLine max_rec_sl = new StripLine();
max_rec_sl.BorderDashStyle = ChartDashStyle.NotSet;
max_rec_sl.Interval = 0;
max_rec_sl.StripWidth = 0.0001;
max_rec_sl.IntervalOffset = 80;
max_rec_sl.BackColor = Color.FromArgb(120, Color.Black);
max_rec_sl.Text = "Max Recommended:80℉";
max_rec_sl.TextAlignment = StringAlignment.Far;
max_rec_sl.TextLineAlignment = StringAlignment.Near;

overallchart.ChartAreas[0].AxisY.StripLines.Add(max_rec_sl);

 

现在呈现下图样子 ,表现一个温度的曲线
 

但怎么让曲线能更加圆滑而且可设置2点间的弧度,请高手指点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值