matlab—绘制给定数据的概率密度曲线+实现图像局部放大效果

总结一下这次作业的知识点~

1.数据导入 

最简便的方法是将文件添加到左侧区域,右键“导入数据”,就可以进入导入数据的页面啦!

需要注意:导入数据中设定的变量名,输出类型(列矢量、表...)。

2.代码部分

negative=negative';
positive=positive';%进行列向量转置为行向量

x1=linspace(min(negative),max(negative),100);
%条形图横坐标,划分单位

[y_negative,x1]=hist(negative,x1);
%hist函数用法[区域内数据个数,区域中点值]=hist(样本数据,区域划分)
%均为行向量

y_negative=y_negative/length(negative); %将数目化为百分比

y_negative=[(y_negative') (y_negative') (y_negative')]';
y_negative=y_negative(:)';
%实现行向量中个数重复,如[1,2,3]->[1,1,1,2,2,2,3,3,3]
%此处为了做出图形锯齿状效果(没什么用..)

x1=linspace(min(negative),max(negative),300); %作图x轴坐标
plot(x1,y_negative,'r');
hold on;%保持曲线图像,与下个图象将会叠加显示


x2=linspace(min(positive),max(positive),100);
[y_positive,x2]=hist(positive,x2);
y_positive=y_positive/length(positive);
y_positive=[(y_positive') (y_positive') (y_positive')]';
y_positive=y_positive(:)';
x2=linspace(min(positive),max(positive),300);
plot(x2,y_positive,'g');


legend('negtive','positive','Location','EastOutside');
%曲线标签(按顺序显示)
%'Location','EastOutside'表示标注的位置

hold on;


axes('Position',[0.2,0.3,0.4,0.3]);
%构造一个新的坐标轴/画图区域(局部放大图像)
%[x1,x2,y1,y2]是新坐标轴原点位于原图中的位置点(按比例)

plot(x1,y_negative,'r',x2,y_positive,'g');
axis([0,30,0,0.6]);
%作图并限定坐标轴的范围,实现图像放大

hold off;

3.实现效果

  • 0
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值