How can I custom cylinder rotate axis?

조회 수: 12 (최근 30일)
ali alizadeh
ali alizadeh 2021년 9월 3일
편집: Tuan 2023년 3월 23일
Hi
I have a 2D graph and I want make it 3D via cylinder. but cylender rotating it about x-axis.
is there anyway to change this? for example rotate about y-axis
  댓글 수: 1
Matt J
Matt J 2021년 9월 3일
but cylender rotating it about x-axis.
I assume you mean the z-axis.

댓글을 달려면 로그인하십시오.

채택된 답변

Matt J
Matt J 2021년 9월 3일
편집: Matt J 2021년 9월 4일
Another approach:
[Xq,Zq]=ndgrid(linspace(-3,3,100));
[~,Rq]=cart2pol(Xq,Zq);
func=@(r) sin(r)./r; %The 1D profile
x=linspace(0,3,100);
y=func(4*x);
Yq=interp1(x,y,Rq); %rotated about Y-axis
surf(Xq,Yq,Zq,'EdgeColor','none')
xlabel 'X', ylabel 'Y', zlabel 'Z'
  댓글 수: 4
ali alizadeh
ali alizadeh 2021년 9월 4일
편집: Matt J 2021년 9월 4일
sorry mr Matt J
I attach my data. may you plot it?
Please plot this datas, with rotating graph about y-axis.
data=load('5.csv');
x=data(:,2);
y=data(:,1); y=y/max(y);
a=3*max(abs(x));
[Xq,Zq]=ndgrid(linspace(-a,a,2000));
[~,Rq]=cart2pol(Xq,Zq);
Yq=interp1(x,y,Rq); %rotated about Y-axis
surf(Xq,Yq,Zq,'EdgeColor','none','FaceAlpha',0.6)
xlabel 'X', ylabel 'Y', zlabel 'Z'
Matt J
Matt J 2021년 9월 4일
I 've added the necessary code to your last comment and run it.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Matt J
Matt J 2021년 9월 3일
편집: Matt J 2021년 9월 3일
For example,
[X,Z,Y] = cylinder(2+cos(0:pi/10:2*pi));
surf(X,Y,Z)
xlabel 'X', ylabel 'Y', zlabel 'Z'
  댓글 수: 4
ali alizadeh
ali alizadeh 2021년 9월 4일
Many Thanks. it's nicly works.
Tuan
Tuan 2023년 3월 23일
편집: Tuan 2023년 3월 23일
Hi, I have just the same question, but this time around y-axis, to create a cup with 2 parabol, can you help me with the code cause im stuck with all the tutorial online

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Graphics Performance에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by