C# 绘制正态分布效果图
时间: 2023-07-12 12:05:24 浏览: 310
使用python绘制3维正态分布图的方法
在 C# 中绘制正态分布效果图可以使用 MathNet.Numerics 库来生成正态分布的数据,并使用 System.Windows.Forms.DataVisualization.Charting 库来绘制图表。
以下是一个绘制正态分布效果图的示例代码:
```C#
using System;
using System.Windows.Forms.DataVisualization.Charting;
using MathNet.Numerics.Distributions;
// 创建一个窗体应用程序
public class NormalDistributionForm : Form
{
private Chart chart;
public NormalDistributionForm()
{
// 初始化窗体和图表控件
this.Text = "Normal Distribution";
this.ClientSize = new System.Drawing.Size(600, 400);
this.chart = new Chart();
this.chart.Parent = this;
this.chart.Dock = DockStyle.Fill;
// 生成正态分布的数据
double[] data = new double[1000];
Normal.Samples(data, 0, 1);
// 添加数据到图表中
Series series = this.chart.Series.Add("Normal Distribution");
series.ChartType = SeriesChartType.Line;
for (int i = 0; i < data.Length; i++)
{
series.Points.AddXY(i, data[i]);
}
// 设置图表的样式
ChartArea area = this.chart.ChartAreas[0];
area.AxisX.MajorGrid.Enabled = false;
area.AxisY.MajorGrid.Enabled = false;
area.AxisX.Title = "X";
area.AxisY.Title = "Density";
area.AxisX.Minimum = 0;
area.AxisX.Maximum = data.Length;
area.AxisY.Minimum = -0.5;
area.AxisY.Maximum = 1.0;
}
static void Main()
{
Application.Run(new NormalDistributionForm());
}
}
```
在这个示例代码中,我们使用 MathNet.Numerics 库中的 Normal 类生成了 1000 个均值为 0,标准差为 1 的正态分布随机数,并将它们添加到了图表中。然后,我们使用 System.Windows.Forms.DataVisualization.Charting 库中的 Chart 控件来绘制这些数据的图表,并设置了图表的样式。
运行这个示例代码,就可以看到一个绘制正态分布效果图的窗口。
阅读全文