How to combine two 1D functions into 3D plot?

As the title says, I have a z(x) function and a z(y) function, they are both 1D functions. But I wanna show these 1D functions at the same scene, however, one is about x-axis, the other one is about y-axis, therefore, it should be a 3D plot when they wanna show at the same plot. My code as below:
x = linspace(-1,1,513);
y = linspace(-1,1,513);
[X,Y] = meshgrid(x,y);
Z0 = 625*sinc(25*x)-200*sinc(20*x).*exp(-1i*5*pi*x);
plot3(x,Y,real(Z0),'b')
hold on
Z90 = 625*sinc(25*y) - 50*sinc(5*y).*cos(10*pi*y);
plot3(Y,x,real(Z90),'r')
And I have also attached the plot I want, but I cannot make it, below comment is the figure I wanna get

回答(1 个)

KSSV
KSSV 2020-10-12
编辑:KSSV 2020-10-12
x = linspace(-1,1,513);
y = linspace(-1,1,513);
[X,Y] = meshgrid(x,y);
Z0 = 625*sinc(25*X)-200*sinc(20*X).*exp(-1i*5*pi*X);
Z90 = 625*sinc(25*Y) - 50*sinc(5*Y).*cos(10*pi*Y);
surf(X,Y,real(Z0))
hold on
surf(X,Y,real(Z90))
shading interp

3 个评论

Thank you for your answer! But I cannot get the result like the plot shows in the question, I only get this
Use shading interp after surf
Hi KSSV, sorry to forget the shading interp, but i get the result like below, it is not desired though.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Data Exploration 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by