如何改变朱莉娅PyPlot极坐标图中的径向刻度?

时间:2015-04-28 13:55:51

标签: python matplotlib plot julia

使用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]() ;

看起来像:

polar

我想重置极坐标,以便从以下位置映射径向刻度标记:

  • 1 - &gt; 0 dB
  • 0.8 - &gt; -10 dB
  • 0.6 - &gt; -20 dB
  • 0.4 - &gt; -30 dB
  • 0.2 - &gt; -40 dB

如何实现这一目标?

1 个答案:

答案 0 :(得分:6)

我从未使用过朱莉娅,但你需要设置yticklabels。我认为应该这样做:

ax1[:set_yticks]([0.2,0.4,0.6,0.8,1.0])
ax1[:set_yticklabels](["-40dB","-30dB","-20dB","-10dB","0dB"])