How to plot peaks on desired location in a 3D plot?

3 次查看(过去 30 天)
There are two vectors that will make an xy-plane. I want to draw a peak pointing in z-direction on a desired location on the xy-plane. In code form it is:
x=linspace(0,180,100);% 1st vector
y=x;% 2nd vector
Now I want to draw a peak of strenght 5 on the intersection of the point (x1,y1)=(30,50).Likewise, I want to draw another peak on the intersection of the point (x2,y2)=(40,120). Further, I want to draw another peak on the intersection of the point (x3,y3)=(60,140). But this whole plot should be a 3D plot as shown in the attached image.
  2 个评论
Matt J
Matt J 2022-2-21
What determines the z-valeus everywhere where there isn't a peak?
Sadiq Akbar
Sadiq Akbar 2022-2-21
Thank you for your response. There is no eq. but I want to draw peaks of my desired values. Say for example, one peak should be of height 5, another should be of height 5.5 and another should be of height 7.

请先登录,再进行评论。

采纳的回答

Star Strider
Star Strider 2022-2-21
[X,Y] = ndgrid(0:300);
C = 50:100:300;
Zf = @(C) exp(-(((X-C).^2)*0.5+((Y-C).^2)));
Z = Zf(C(1)) + Zf(C(2)) + Zf(C(3));
[pks,locs] = findpeaks(Z(:), 'MinPeakHeight',0.5)
pks = 3×1
1 1 1
locs = 3×1
15101 45301 75501
figure
surf(X, Y, Z, 'EdgeColor','none')
hold on
plot3(X(locs), Y(locs), Z(locs), '^r')
hold off
Experiment with your data with this approach.
.
  8 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by