How can I make points show through a surface plot?
조회 수: 30 (최근 30일)
이전 댓글 표시
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
채택된 답변
Chunru
2021년 7월 28일
% 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
Chunru
2021년 7월 28일
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
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!