Plot 2 matrices in one graph with 3 axis
Mostrar comentarios más antiguos
Hi, I have to plot curves "MSE" witch depend on 2 variables. Variable 1 : "pct=1:1:n" and variable 2 : "CR" .
But "CR" depends on two variables also:
"ptx=1:1:n" and "pct=1:1:n"
MSE=fct(CR,pct)
Here a simplification of the code:
for pct=1:1:n
for ptx=1:1:n
calculate CR(pct,ptx)
calculate MSE(pct,ptx)
end
end
I want to plot curves of "MSE" in function with "pct" and "CR" , it means ;
axis x : "pct"
axis y : "CR"
axis z : "MSE"
That is, a kind of succession of curves Thank you in advance
4 comentarios
Ameer Hamza
el 16 de Jun. de 2018
Editada: Ameer Hamza
el 16 de Jun. de 2018
Have you tried plot3()
plot3(pct, CR, MSE);
kortas manel
el 16 de Jun. de 2018
Editada: kortas manel
el 16 de Jun. de 2018
Ameer Hamza
el 16 de Jun. de 2018
Your x variable is an n-element vector, whereas y and z are nxn matrices. And from your for loop example, it seems that you want several 2D plots. Can you show an example plot similar to what you are trying to draw?
kortas manel
el 16 de Jun. de 2018
Respuesta aceptada
Más respuestas (1)
Guillaume
el 16 de Jun. de 2018
If your calculate functions can operate on matrices:
[pct, ptx] = ndgrid(n);
CR = yourcalculateCRfunction(pct, ptx);
MSE = yourcalculateMSEfunction(pct, ptx);
plot3(pct, CR, MSE);
Otherwise
[pct, ptx] = ndgrid(n);
CR = zeros(size(pct));
MSE = zeros(size(pct));
for i = 1:numel(pct)
CR(i) = yourcalculateCRfunction(pct(i), ptx(i));
MSE(i) = yourcalculateMSEfunction(pct(i), ptx(i));
end
plot3(pct, CR, MSE);
Categorías
Más información sobre Mathematics en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

