Using 'graph' for 3D representation.

I want to make a 3D map with the 'graph' function introduced in matlab 2015b, is this possible? or is there a workaround? It seems that I can not add 'ZData' as it is.
Thank you.
What i am trying to do:
s = [1 1 1 2 2 3];
t = [2 3 4 3 4 4];
G = graph(s,t);
x = [0 1 .5 .5];
y = [0 0 1 .5];
z = [0 0 0 1];
plot(G, 'XData', x, 'YData', y, 'ZData', z)
Edit: I have also tried with 'plot3'.

 Réponse acceptée

Walter Roberson
Walter Roberson le 2 Oct 2015

0 votes

Sorry, the underlying graphics object http://www.mathworks.com/help/matlab/ref/graphplot-properties.html does not have a ZData property.

1 commentaire

Ginner
Ginner le 2 Oct 2015
Hmm... That's what I was afraid to hear.
Thank you.

Connectez-vous pour commenter.

Plus de réponses (2)

Christine Tobler
Christine Tobler le 7 Jan 2016
You can get plot3 to show you the structure you're looking for as follows:
>> xx = [x(s); x(t)]
>> yy = [y(s); y(t)]
>> zz = [z(s); z(t)]
>> plot3(xx, yy, zz, 'k')
This plots all your edges as individual line segments in 3D. I'm setting the color to black because otherwise each line has a different color.
Steven Lord
Steven Lord le 27 Jan 2017

0 votes

The ability to visualize graph and digraph objects in 3-D was added to MATLAB in release R2016b.

Catégories

En savoir plus sur Graph and Network Algorithms dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by