使用julia和PyPlot(看起来像是调用matplotlib)我有一个径向对数图,范围从图的外边缘0dB到内部的-50dB:
using PyPlot ;
theta = 0:0.02:1 * pi ;
n = length(theta) ;
U = cos( theta ).^2 ;
V = zeros( size(U) ) ;
for i = 1:n
v = log10( U[i] ) ;
if ( v < -50/10 )
v = 0 ;
else
v = v/5 + 1 ;
end
V[i] = v ;
end
f1 = figure("p2Fig1",figsize=(10,10)) ; # Create a new figure
ax1 = axes( polar="true" ) ; # Create a polar axis
pl1 = plot( theta, V, linestyle="-", marker="None" ) ;
dtheta = 30 ;
ax1[:set_thetagrids]([0:dtheta:360-dtheta]) ;
ax1[:set_theta_zero_location]("E") ;
f1[:canvas][:draw]() ;
看起来像:
我想重置极坐标,以便从以下位置映射径向刻度标记:
如何实现这一目标?
答案 0 :(得分:6)
我从未使用过朱莉娅,但你需要设置yticklabels。我认为应该这样做:
ax1[:set_yticks]([0.2,0.4,0.6,0.8,1.0])
ax1[:set_yticklabels](["-40dB","-30dB","-20dB","-10dB","0dB"])