今天给大家安利一个超级实用的绘图控件库------OxyPlot,配合WinForms使用,让你轻松绘制专业级图表!
本文将手把手教你如何搭建一个简单的波形图显示窗口,完整步骤 + 源码解析,建议收藏!
项目搭建步骤(超详细)
新建项目
-
打开 Visual Studio
-
选择"创建新项目"
-
选择"Windows 窗体应用(.NET Framework)"
-
起个名字,比如
WaveformPlotDemo
-
点击"下一步",完成创建
配置 OxyPlot
- 下载 OxyPlot 的依赖包
https://pan.baidu.com/s/19hkJiR9nK60vGsBGgapwHw?pwd=rksh
- 解压放到你的项目文件夹下

- 右键"依赖项" -> "添加项目引用" -> 找到解压位置 -> 添加 DLL 文件



- 点击"确定"。 接下来,安装 NuGet 包: 点击工具->NuGet包管理器->管理解决方案的NuGet包

- 搜索
OxyPlot.WindowsForms
→ 点击"安装"

这样,我们的环境就配置完成啦!
界面设计与代码实现

我们不使用拖控件的方式,而是直接用代码方式添加 PlotView
控件,实现更加灵活的图形界面设计。
在 Form1.cs
中编写如下代码:
cs
using System;
using System.Windows.Forms;
using OxyPlot;
using OxyPlot.Series;
using OxyPlot.WindowsForms;
using OxyPlot.Axes;
namespace WinFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
InitializePlot(); // 初始化图表
}
private void InitializePlot()
{
PlotView plotView = new PlotView { Dock = DockStyle.Fill };
PlotModel plotModel = new PlotModel
{
Title = "Demod BaseBand Waveform",
PlotMargins = new OxyThickness(60, 40, 60, 40),
Background = OxyColors.Black,
TextColor = OxyColors.White
};
var xAxis = new LinearAxis
{
Position = AxisPosition.Bottom,
Title = "Time",
Minimum = 0,
Maximum = 2000,
IsZoomEnabled = true,
MajorGridlineStyle = LineStyle.Solid,
MajorGridlineColor = OxyColors.White
};
var yAxis = new LinearAxis
{
Position = AxisPosition.Left,
Title = "Amplitude",
Minimum = -0.8,
Maximum = 0.8,
MajorStep = 0.2,
IsZoomEnabled = false,
IsPanEnabled = false,
AbsoluteMinimum = -0.8,
AbsoluteMaximum = 0.8,
MajorGridlineStyle = LineStyle.Solid,
MajorGridlineColor = OxyColors.White
};
plotModel.Axes.Add(xAxis);
plotModel.Axes.Add(yAxis);
plotView.Model = plotModel;
this.Controls.Add(plotView);
}
}
}