MATLAB - 你能制作多个直方图吗?

发布于 2024-10-20 15:55:56 字数 66 浏览 4 评论 0原文

我想在一张图中绘制多个直方图,就像 subplot 命令一样,仅使用直方图。有没有办法在 MATLAB 中做到这一点?

I want to make multiple plots of a histogram in one figure, like the subplot command, only with histograms. Is there a way to do this in MATLAB?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

青柠芒果 2024-10-27 15:55:56

在不同的次要情节中?

subplot(2,1,1)
hist(...)
subplot(2,1,2)
hist(...)

In different subplots?

subplot(2,1,1)
hist(...)
subplot(2,1,2)
hist(...)
坏尐絯 2024-10-27 15:55:56

使用 Hold on 可以将多个直方图放入一张图中。但是,在绘制下一个直方图之前,您需要更改第一个直方图的颜色。

x1 = randn(1000,1);x2 = 1 + randn(1000,1);
hist(x1,100), hold on
h = findobj(gca,'Type','patch');
set(h,'FaceColor','r','Edgecolor','c')
hist(x2,100)

不过,在比较直方图时应小心,因为直方图箱是单独生成的。

我使用以下添加来解决此问题:

x1 = randn(1000,1);x2 = 1 + randn(1000,1);
xrangel = min(min(x1),min(x2));
xrangeh = max(max(x1),max(x2));
x1_tmp = x1(x1>=xrangel & x1<=xrangeh);
x2_tmp = x2(x2>=xrangel & x2<=xrangeh);
xbins = xrangel:(xrangeh - xrangel)/res:xrangeh;
hist(x1_tmp,xbins)
hold on 
h = findobj(gca,'Type','patch');
% some additional coloring to help visibility
set(h,'FaceColor','c','EdgeColor',[0 0.99 0],'LineWidth',1.2,'LineStyle','-','EdgeAlpha',0.89);
hist(x2_tmp,xbins)

It's possible to put multiple histograms in one figure using hold on. However, you'll need to change the color for the first histogram before you plot the next one.

x1 = randn(1000,1);x2 = 1 + randn(1000,1);
hist(x1,100), hold on
h = findobj(gca,'Type','patch');
set(h,'FaceColor','r','Edgecolor','c')
hist(x2,100)

You should take caution when comparing the histograms though, since the histogram bins are generated separately.

I use the following additions to resolve this:

x1 = randn(1000,1);x2 = 1 + randn(1000,1);
xrangel = min(min(x1),min(x2));
xrangeh = max(max(x1),max(x2));
x1_tmp = x1(x1>=xrangel & x1<=xrangeh);
x2_tmp = x2(x2>=xrangel & x2<=xrangeh);
xbins = xrangel:(xrangeh - xrangel)/res:xrangeh;
hist(x1_tmp,xbins)
hold on 
h = findobj(gca,'Type','patch');
% some additional coloring to help visibility
set(h,'FaceColor','c','EdgeColor',[0 0.99 0],'LineWidth',1.2,'LineStyle','-','EdgeAlpha',0.89);
hist(x2_tmp,xbins)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文