Matlab Polarplot()和表面颜色

问题描述 投票:0回答:2

我对我的极地情节有点挣扎。我正在玩罢工和逢低,对于每一对,都是“强度”。我想在我的极坐标图上绘制这个表面/轮廓f /任何函数。我找不到这样做的手柄。 Dpp2包含给定θ和rho / strike和dip的强度值。

xTmp = (0:4:360);
yTmp = (0:22.5:90);

[strike,dip]= meshgrid(deg2rad(xTmp),deg2rad(yTmp));

dip2 = rad2deg(dip);
strike2 =rad2deg(strike);

figure('name', 'COLD');
polarplot([0 360],[0 90]);

s = surf(strike2, dip2, DPp2);

polarplot(s);
colormap

我尝试过类似的东西,这显然不起作用。

欢呼,弗洛

matlab plot colormap polar-coordinates
2个回答
1
投票

据我所知,没有办法直接在极坐标图中创建表面图。

一种解决方法是手动创建极轴图。你可以找到一个例子here

另一个解决方法是使用polarscatter创建一个散点图(如果你有一个紧密的网格看起来相似)看看this

因为你提到了手柄:如果你想要一个轴的手柄,请查看来自polaraxeshere


0
投票

极地散射不起作用,所以我尝试了另一个功能,这似乎按照这个页面工作:https://fr.mathworks.com/matlabcentral/answers/95796-how-do-i-create-a-contour-plot-in-polar-coordinates

我还在那里注意到,等高线图并没有“包裹”在我的极地情节周围,但到目前为止它正在编译。如果有人知道如何将等高线图叠加到极坐标图上?

dip2 = rad2deg(dip);
strike2 =rad2deg(strike);


h = polar([0 360],[0 90]);
hold on;
contourf(strike2,dip2,DPp2);
% Hide the POLAR function data and leave annotations
set(h,'Visible','off')
% Turn off axes and set square aspect ratio
axis off
axis image
© www.soinside.com 2019 - 2024. All rights reserved.