scatter3 makes a 2D plot

39 Ansichten (letzte 30 Tage)
Cynthia Dickerson
Cynthia Dickerson am 19 Aug. 2016
Kommentiert: KenoKanawa am 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?

Akzeptierte Antwort

Steven Lord
Steven Lord am 20 Aug. 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 Kommentare
Cynthia Dickerson
Cynthia Dickerson am 21 Aug. 2016
That fixes it. Thanks!
KenoKanawa
KenoKanawa am 13 Sep. 2019
Thank you

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by