Borrar filtros
Borrar filtros

Two ordinate axes on a single plot

7 visualizaciones (últimos 30 días)
Rick
Rick el 16 de Oct. de 2014
Comentada: Rick el 17 de Oct. de 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.

Respuesta aceptada

Orion
Orion el 17 de Oct. de 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 comentario
Rick
Rick el 17 de Oct. de 2014
Thanks, everything is good now!

Iniciar sesión para comentar.

Más respuestas (2)

Orion
Orion el 16 de Oct. de 2014
Hello,
you need to use plotyy, which does exactly what you're expecting.
  1 comentario
Rick
Rick el 16 de Oct. de 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)')

Iniciar sesión para comentar.


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

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by