how expand plots with different x-axis ranges

3 ビュー (過去 30 日間)
Salvatore Savastano
Salvatore Savastano 2019 年 12 月 9 日
編集済み: Adam Danz 2019 年 12 月 11 日
Hi folks,
I have a problem with plot some distributions. I have two bar plots with different x-range values: one of them is contained in the other but it's smaller and so when I try to plot both only one is clearly visible while the other is shown as a "spike". How can I do to visualize both of them?
Togive a better idea about my question I have attached the two plot shown separately and I would like to have both on the same figure avoiding the "spike" effect.plot_test1.png
plot_test2.png
Thank you in advance for your help

採用された回答

Adam Danz
Adam Danz 2019 年 12 月 9 日
Specify the edges for both histograms rather than letting that funciton choose the bins.
If the data from histrogram #2 only covers a very tiny range of the data from histogram #1, it may not be easy to see two different distributions plotted on the same axes.
If this advice doesn't solve the problem you'll have to provide a few lines that reproduces the problem (the data and the code you're using).
  2 件のコメント
Salvatore Savastano
Salvatore Savastano 2019 年 12 月 9 日
編集済み: Salvatore Savastano 2019 年 12 月 9 日
Dear Adam,
thank you for your reply.
<<If the data from histrogram #2 only covers a very tiny range of the data from histogram #1, it may not be easy to see two different distributions plotted on the same axes. >>
You have centred my problem: the data of histogram #1 (red) is a smaller interval of data of histogram #2 (blu). When I try to plot both on the same figure the smaller one becomes a sort of "spike" and it's not possible to see its distribution. Of course, if I try to zoom the area around the spike, th e distribution will appear again but the other one (the blu) won't be anymore visible. I would like to find a way to show both distributions.
The code I'm using is the following:
map = brewermap(2,'Set1');
figure;
title('Probability Density Function', 'FontSize',16);
xlabel('Pixel magnitude [dB]', 'FontSize',16);
ylabel('Probability density', 'FontSize',16);
axis tight;
b1 = bar(gxp1, 3*gyp1/max(gyp2), 1,'FaceColor',map(1,:),'FaceAlpha',0.5);
hold on
b2 = bar(gxp2, gyp2, 1,'FaceColor',map(2,:),'FaceAlpha',0.5);
Adam Danz
Adam Danz 2019 年 12 月 10 日
編集済み: Adam Danz 2019 年 12 月 11 日
Where does those first two inputs come from in bar() ?
Why not use histogram where you can specify the bar width. The suggestion in my answer would definitely make the bars visible for both distributions but there may be a lot fewer bars for 1 group than the other.
Alternatively you could scale the width parameter in bar(___,width)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeObject Containers についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by