Plotting multiple 3D plots on one graph
Afficher commentaires plus anciens
Hi,
I have the following code. I want to plot all 7 on the same plot. How do I do that?
I tried hold on, but that gives me an empty plot. Thank you!
figure (4)
plot3(cm_willans,pma_1400,pme_e, '-r');
plot3(cm_willans,pma_1900,pme_e, '-m');
plot3(cm_willans,pma_2500,pme_e, '-g');
plot3(cm_willans,pma_3000,pme_e, '-b');
plot3(cm_willans,pma_4200,pme_e, '-k');
plot3(cm_willans,pma_5300,pme_e, '-y');
plot3(cm_willans,pma_6400,pme_e, '-c');
grid on
hold on
xlabel('Cm in m/s')
ylabel('Pma in Pascals')
zlabel('Pme in Pascals')
Also, secondary question: How do I create a legend for each one of those lines? Thanks
Réponse acceptée
Plus de réponses (1)
OMKAR SHETYE
le 28 Août 2021
0 votes
For the legend part :- first create a vector which will have all the names for the respective plots, then call the legend function using the pre-defined vector.
figure (4)
grid on
hold on % Hold position should be at the start of plotting to overlap plots
plot3(cm_willans,pma_1400,pme_e, '-r','DisplayName','legend-1');
plot3(cm_willans,pma_1900,pme_e, '-m','DisplayName','legend-2');
plot3(cm_willans,pma_2500,pme_e, '-g','DisplayName','legend-3');
plot3(cm_willans,pma_3000,pme_e, '-b','DisplayName','legend-4');
plot3(cm_willans,pma_4200,pme_e, '-k','DisplayName','legend-5');
plot3(cm_willans,pma_5300,pme_e, '-y','DisplayName','legend-6');
plot3(cm_willans,pma_6400,pme_e, '-c','DisplayName','legend-7'); % DisplayName property to set legend name
xlabel('Cm in m/s')
ylabel('Pma in Pascals')
zlabel('Pme in Pascals')
v = ["Plot-1","Plot-2","Plot-3","Plot-4","Plot-5","Plot-6","Plot-7"]
legend(v)
Catégories
En savoir plus sur Title dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
