How do I create more than one plot at a time in a script?

We are taking multiple measurements from multiple instrument channels. I would like to create a histogram of values by channel, then another histogram of all of the data combined. How do you create more than one plot in a script? I'm attaching my code, it creates a single plot of the combined data.
for angle = 90:10:270
rows = nonInvData.actAngle == angle & nonInvData.orientation == orientation;
dataVals = nonInvData(rows, ["channel","pa13"]);
for chn = 0:39
rows = dataVals.channel == string(chn);
data = dataVals(rows, "pa13");
h(angle) = histogram(data.pa13,20,'DisplayName',string(chn),"BinMethod","integers")
hold on
end
hold off
legend show
h(angle+1) = histogram(dataVals.pa13,20,'DisplayName',string(chn),"BinMethod","integers")
end

 采纳的回答

Create the different axes prior to your loops. Then specify which axes should be used for each histogram. Here's an example that produces two axes (subplots) within one figure (you could also produces them in different figures).
figure
ax1 = subplot(2,1,1);
ax2 = subplot(2,1,2);
histogram(ax1, .......)
histogram(ax2, .......)
To put them in separate figures
figure
histogram(...)
figure
histogram(...)

2 个评论

How would I put them into separate figures?
I updated my answer to demonstrate separate figures.
Another alternative:
figure
ax1 = axes();
figure
ax2 = axes();
histogram(ax1, .......)
histogram(ax2, .......)

请先登录,再进行评论。

更多回答(0 个)

类别

产品

版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by