在一个3m*3m的空间中随机产生3个原始随机数据,再分别在这每个随机数据周围增加10个均值为0,方差为0.1的高斯白噪声随机数据,用MATLAB绘制出这些数据点,以圆圈表示原始数据,星号表示增加噪声后的高斯随机数据
时间: 2024-05-21 17:17:17 浏览: 148
matlab用独立同分布高斯序列生成白噪声,并且进行统计,生成了样本直方图与理论的曲线进行对比(内附代码,图像)
5星 · 资源好评率100%
以下是MATLAB代码实现:
```matlab
% 生成3个原始随机数据
data = rand(3,2)*3;
% 在每个随机数据周围增加10个高斯白噪声随机数据
noise = randn(30,2)*0.1;
data_noise = [repmat(data(1,:),10,1)+noise(1:10,:);...
repmat(data(2,:),10,1)+noise(11:20,:);...
repmat(data(3,:),10,1)+noise(21:30,:)];
% 绘制数据点
figure;
hold on;
plot(data(:,1),data(:,2),'o','MarkerSize',10,'LineWidth',1.5);
plot(data_noise(:,1),data_noise(:,2),'*','MarkerSize',5,'LineWidth',1.5);
legend('原始数据','增加噪声后的数据');
xlabel('X轴');
ylabel('Y轴');
title('随机数据点及其高斯随机噪声');
```
运行以上代码,即可得到如下图所示的随机数据点及其高斯随机噪声的图像:
![随机数据点及其高斯随机噪声图像](https://img-blog.csdnimg.cn/20210722164122381.png)
阅读全文