Effacer les filtres
Effacer les filtres

Two ordinate axes on a single plot

7 vues (au cours des 30 derniers jours)
Rick
Rick le 16 Oct 2014
Commenté : Rick le 17 Oct 2014
Hello,
I'm trying to reduplicate this plot on MATLAB. I see that the scale of the two different y-axes needs to be very different. How do I make it so that the right side of the plot will have a separate axis than the left side, as seen in this plot which shows both concentration (of multiple species) vs. distance down the reactor as well as conversion vs. distance.
I have of course managed to make the conversion plot, just not the concentration plot. I attached the plot I am trying to make on MATLAB.

Réponse acceptée

Orion
Orion le 17 Oct 2014
your Ytick may still be there. Did you try to change the size of the figure ?
otherwise, just get the handle of the axes :
hAx = plotyy(z,[CA,CB,CC],z,Conversion);
and reset the Ytick values with a new set of Ytick
set(hAx(1),'YTick',value_for_axe_left)
set(hAx(2),'YTick',value_for_axe_right)
  1 commentaire
Rick
Rick le 17 Oct 2014
Thanks, everything is good now!

Connectez-vous pour commenter.

Plus de réponses (2)

Orion
Orion le 16 Oct 2014
Hello,
you need to use plotyy, which does exactly what you're expecting.
  1 commentaire
Rick
Rick le 16 Oct 2014
How do I use it when I have multiple things I want to plot?
Conversion = linspace(0,0.8,1000);
for i = 2:numel(Conversion)
V_PFR(i) = (FA0/(k2*CA0)).*integral(f,Conversion(1),Conversion(i));
A = 0.0205; % ft^2
z(i) = V_PFR(i)/A/100; % ft
CA(i) = CA0*((1-Conversion(i))/(1+epsilon*Conversion(i)));
CB(i) = CA0*Conversion(i)*(1-Conversion(i)/(1+epsilon*Conversion(i)));
CC(i) = CA0*Conversion(i)*(1-Conversion(i)/(1+epsilon*Conversion(i)));
end
plotyy(z,CA,z,CB,z,CC,z,Conversion,'plot')
xlabel('distance down the reactor (ft)')
ylabel('Concentration (lb mol/ft^3)')

Connectez-vous pour commenter.


Orion
Orion le 16 Oct 2014
Modifié(e) : Orion le 16 Oct 2014
something like
plotyy(z,[CA,CB,CC],z,Conversion)
% assuming CA,CB,CC are columns vectors. otherwise, transpose them.
  1 commentaire
Rick
Rick le 17 Oct 2014
Modifié(e) : Rick le 17 Oct 2014
Now that I have it, I lost my tick marks on the ordinate axes. It only shows the first and last points.

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by