I need to make plot like this:
1.JPG
I know how to plot each individually but dont know how to plot them next to each other like the image.

댓글 수: 10

Philippe Lebel
Philippe Lebel 2020년 1월 15일
편집: Philippe Lebel 2020년 1월 15일
inlcude the code that produces the box plots you want to merge please.
Adam Danz
Adam Danz 2020년 1월 15일
편집: Adam Danz 2020년 1월 15일
Hint:
hold on
bar(. . .)
plot(1.25, y, 'ko')
errorbar(. . .)
it is simply like this:
boxplot(T{(find_groups == No_class_images(k)),var(i)},'widths',0.1)
Thanks I tried it like what you mentioned before but it did not work.
@Walter Roberson any suggestion?
Adam Danz
Adam Danz 2020년 1월 15일
Sure it does,
What did you try and what didn't work?
200115 145536-Figure 1.png
I tried
figure (1)
boxplot(y)
hold on
plot(2,y)
hold off
but it did not work.
I used 2 in x-axis of the second plot because the default for boxplot's x-axis is 1 (you can see in the image) so I tried to be next to the boxplot.
Adam Danz
Adam Danz 2020년 1월 15일
" it did not work" doesn't tell me much.
Here are some more tips.
  • y should be a vector.
  • Specify black circle markers using 'ko'.
  • you still need to use errorbar() if you want the magenta errorbar.
As I said in the question, each plot is produced individually so the points mentioned above (being vector, using 'ko',...) does not change the issue I have.
Yes 'it did not work' is not clear. Let me tell more about it: Using above code the boxplot was produced but the nex plot (the plot after hold on) was not shown. it was only boxplot.
" so the points mentioned above (being vector, using 'ko',...) does not change the issue I have"
It's hard to address the issue you're having when you haven't explained what the issues are.
This line from your code plot(2,y) will definitely not produce the plot you want since it will produce lines, not black circular markers. So the 'ko' does address that problem. If y were a matrix, it would also produce undesired effects which is why y must be a vector - but again, we don't know what the issues are.
'Using above code the boxplot was produced but the nex plot (the plot after hold on) was not shown"
Ahhhh... there we go. The points created by plot() are plotted but you just can't see them.
Here's your fix:
xlim([0,3])
xlim worked. Thank you. Can you move your comment to answers so that I can accept?

댓글을 달려면 로그인하십시오.

 채택된 답변

Adam Danz
Adam Danz 2020년 1월 16일
편집: Adam Danz 2020년 1월 17일

1 개 추천

Summary of comments under the question
The problem was that the x axis limit was [0,1] while the plotted data were at x=2.
The solution:
xlim([0,3])

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Data Distribution Plots에 대해 자세히 알아보기

태그

질문:

2020년 1월 15일

편집:

2020년 1월 17일

Community Treasure Hunt

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

Start Hunting!

Translated by