由于zedgraph控件中绘制的波形曲线为矢量图,能够自由缩放,非常适合绘制波形曲线。
private void DataPro() // 数据处理
{
try
{
int max_x = data_ch1.Count;
if (max_x % 10 != 0)
{
max_x += (10 - (max_x % 10));
}
RollingPointPairList list1 = new RollingPointPairList(max_x);
RollingPointPairList list2 = new RollingPointPairList(max_x);
RollingPointPairList list3 = new RollingPointPairList(max_x);
zedGraphControl1.GraphPane.CurveList[0] = zedGraphControl1.GraphPane.AddCurve("通道1", list1, Color.Blue, SymbolType.None);
zedGraphControl1.GraphPane.CurveList[1] = zedGraphControl1.GraphPane.AddCurve("通道2", list2, Color.Red, SymbolType.None);
zedGraphControl1.GraphPane.CurveList[2] = zedGraphControl1.GraphPane.AddCurve("通道3", list3, Color.Green, SymbolType.None);
zedGraphControl1.GraphPane.XAxis.Scale.Min = 0; //X轴最小值0
zedGraphControl1.GraphPane.XAxis.Scale.Max = max_x; //X轴最大30
zedGraphControl1.GraphPane.XAxis.Scale.MinorStep = 1;//X轴小步长1,也就是小间隔
zedGraphControl1.GraphPane.XAxis.Scale.MajorStep = 5;//X轴大步长为5,也就是显示文字的大间隔
zedGraphControl1.GraphPane.YAxis.Scale.MaxAuto = true; // 根据数值的大小自动设置Y轴最大值
zedGraphControl1.GraphPane.YAxis.Scale.MinAuto = true; // 根据数值的大小自动设置Y轴最小值
for (int i = 10; i < data_ch1.Count; i++) // 排除前部异常点
{
zedGraphControl1.GraphPane.CurveList[0].AddPoint(i + 1, data_ch1[i]);
zedGraphControl1.GraphPane.CurveList[1].AddPoint(i + 1, data_ch2[i]);
zedGraphControl1.GraphPane.CurveList[2].AddPoint(i + 1, data_ch3[i]);
}
zedGraphControl1.Refresh();
zedGraphControl1.RestoreScale(zedGraphControl1.GraphPane); //恢复默认大小
if (!checkBox1.Checked)
{
label6.Text = 0.ToString(tag);
zedGraphControl1.GraphPane.CurveList[0].IsVisible = false;
zedGraphControl1.Refresh();
zedGraphControl1.RestoreScale(zedGraphControl1.GraphPane); //恢复默认大小
}
if (!checkBox2.Checked)
{
label7.Text = 0.ToString(tag);
zedGraphControl1.GraphPane.CurveList[1].IsVisible = false;
zedGraphControl1.Refresh();
zedGraphControl1.RestoreScale(zedGraphControl1.GraphPane); //恢复默认大小
}
if (!checkBox3.Checked)
{
label8.Text = 0.ToString(tag);
zedGraphControl1.GraphPane.CurveList[2].IsVisible = false;
zedGraphControl1.Refresh();
zedGraphControl1.RestoreScale(zedGraphControl1.GraphPane); //恢复默认大小
}
}
catch
{
}
}
本文介绍了如何利用C#编程语言结合ZedGraph控件,实现高清晰度、可自由缩放的波形曲线绘制,非常适合于显示和分析各种波形数据。
512

被折叠的 条评论
为什么被折叠?



