How do I align the vertices and the adjacency graph of a Buckyball?
1 view (last 30 days)
Show older comments
Inspired by hypercubes-and-graphs, I would like to visualize a wireframe model of a Buckyball. Using the following code, I am almost there but I need some advice on how to create the apparent rotational misalignment which exists between the graph and the 3D plot.
How do I align the two "plots": one produced with plot3 (the vertices); and the other with plot (the adjacency graph)?
[B, v] = bucky;
G = graph(B);
A = 4; % A scaling factor
plot3(A*v(:,1), A*v(:,2), A*v(:,3), 'o'), hold on
plot(G,'layout','force3')
axis square off vis3d
set(gca,'clipping','off'), hold off
0 Comments
Answers (1)
darova
on 16 Nov 2019
Here is a way
ind = full(B); % convert to ordinary matrix
[rr,cc] = find(ind); % find non-zero elements
ix = [rr cc]'; % set-up connections
x = A*v(:,1);
y = A*v(:,2);
z = A*v(:,3);
plot3(x(ix),y(ix),z(ix));
0 Comments
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!