How can I plot boxplots within a line graph?

18 次查看(过去 30 天)
I have the above line plot that I want to add some box plots onto however the hold on function doesn't seem to work for box plots?
Currently I am plotting the data for the first graph, then using "hold on" and then trying to add several box plots using boxplot([data1,data2],[0,5]). I want this to plot the box plots for data1 and data2 at locations 0 and 5 along the x axis of the first line plot.
Any help is greatly appreciated.

回答(1 个)

the cyclist
the cyclist 2015-8-27
The way you have specified [0,5] does not correspond to the correct syntax of the boxplot command. (That will be interpreted as a grouping variable, which is probably why it is not working.)
I believe you want to specify your boxplot as
boxplot([data1,data2],'positions',[0,5])
  2 个评论
Zach
Zach 2015-8-27
编辑:the cyclist 2015-8-27
Hey this worked! But it I think it broke the axis for the original plot? How can I change it so the x axis is back to using the data from the original plot rather than the box plots?
The code I'm using to add the box plots is as follows:
hold on;
x1 = VarName2;
x2 = VarName4;
x3 = VarName6;
x = [x1;x2;x3];
g = [100*ones(size(x1)); 500*ones(size(x2)); 1000*ones(size(x3))];
boxplot(x,g,'positions',[100,500, 1000],'plotstyle','compact');
the cyclist
the cyclist 2015-8-27
It's possible that simply doing the boxplots first, then the other, is the simplest way.
If that does not work, then after you do the first plot (but before the boxplot), do
xlim = get(gca,'XLim')
and then after the boxplot, do
set(gca,'XLim',xlim)
and similar for y if you need to.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by