How can I make points show through a surface plot?
30 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Samuel Harvey
am 28 Jul. 2021
Kommentiert: Samuel Harvey
am 28 Jul. 2021
I have code that makes a centerline (left) then creates a surface around that centerline (right). I'd like the centerline points to show through the surface so I can still see them while I rotate it around. How can I do this?
Edit: To be more clear, I am specifically not looking for the entire surface to be transparent. I don't want to see the back side of the surface showing through, just the centerline.
0 Kommentare
Akzeptierte Antwort
Chunru
am 28 Jul. 2021
% Plot a sphere and a line
[x, y, z] = sphere;
h = surf(x, y, z);
hold on
plot3(-1:1, zeros(3,1), zeros(3,1), 'r', 'LineWidth', 3);
h.FaceAlpha = 0.5; % make it transparent to see inside
3 Kommentare
Chunru
am 28 Jul. 2021
Then you can use two axes:
ax1 = axes('XLim', [-1,1], 'YLim', [-1,1], 'ZLim', [-1,1]);
view(3);
ax2 = copyobj(ax1, gcf);
[x,y,z]=sphere;
h = surf(ax1, x, y, z)
plot3(ax2, -1:1, zeros(3,1), zeros(3,1), 'r', 'LineWidth', 3);
axes(ax2);
box off
axis off
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Surface and Mesh 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!