scatter3 makes a 2D plot

39 vues (au cours des 30 derniers jours)
Cynthia Dickerson
Cynthia Dickerson le 19 Août 2016
Commenté : KenoKanawa le 13 Sep 2019
I'm trying to plot the contents of a cell array (RSD_c{v}) composed of 5 32x3 double matrices. I used the following code:
figure;hold on;
cellfun( @(x) scatter3( x(:,3), x(:,4), x(:,5) ), RSD_c );
title('Relationship Between Relative Standard Deviation, Bootstrap Replicates, and Dimension')
xlabel('Bootstrap Replicates') % x-axis label
ylabel('Relative Standard Deviation') % y-axis label
zlabel('Dimensions') % z-axis label
When the graph is plotted, it makes a 2D chart. Tracing the points shows that they have x, y, and z coordinates. However, the graph is 2-dimensional, with the points color-coded by z-coordinate.
Does anybody know how to fix this?

Réponse acceptée

Steven Lord
Steven Lord le 20 Août 2016
You used hold before calling scatter3. When you turn hold on, it basically "freezes" the properties of the axes from being automatically modified (by functions like scatter3, for example.) If no axes exists when you call hold, it creates one in the default 2-D view.
You can create an axes with a 3-D view using the view command then hold it (or vice versa; hold prevents the properties from being automatically modified, but you can explicitly modify them.)
  2 commentaires
Cynthia Dickerson
Cynthia Dickerson le 21 Août 2016
That fixes it. Thanks!
KenoKanawa
KenoKanawa le 13 Sep 2019
Thank you

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by