2017-04-21 85 views
1

我的数据是在极坐标中,当我绘制它们并尝试添加极坐标网格时,它将成为完整的圆形,但我的数据仅为0-60度。如何限制gnuplot中的极坐标网格?

我怎样才能限制只从0-60度的网格,而不是一个完整的圆?

回答

0

我不知道这个内置功能。但是,作为解决方法,可以使用multiplot来手动绘制网格线。 例如:

set term pngcairo enhanced size 800,800 
set output 'fig.png' 

set angles degrees 

set multiplot 

set lmargin at screen 0.1 
set tmargin at screen 0.9 
set rmargin at screen 0.9 
set bmargin at screen 0.1 

set samples 1000 
unset border 

R_max = 1 
dR = 0.2 

phi_max = 60. 
dphi = 15 

set xr [0:R_max] 
set yr [0:R_max] 

set xtics out nomirror 
unset ytics 

set style line 42 lc rgb '#666666' dt 3 

unset key 
plot \ 
    for [i=0:phi_max/dphi] (x>=0&&x<=R_max*cos(i*dphi))?tan(i*dphi)*x:1/0 w l ls 42 

set polar 
set trange [0:phi_max] 
unset raxis 
unset rtics 
plot \ 
    for [i=1:ceil(R_max/dR)] i*dR<=R_max?i*dR:1/0 w l ls 42 

unset raxis 
unset rtics 
plot cos(t) w l lw 2 lc rgb 'dark-red' 

生产: enter image description here

+0

非常感谢你,它帮助了很多。 如果可能,我还有一个问题。 我使用此代码与网格绘制热图数据,和它完美的作品作为链接 但它dosent填充的区域,如果我使用dgrid3d它会给我一个正方形。 我必须将我的数据从极地转换为笛卡尔,才能在此链接中使用splot ,您会发现这两个图表和我正在使用的代码 https://mega.nz/#F!hcQEHbqR!NVxeSrFoy1-YcEbItzwnng 数据 0.0498099 \t \t 0.00435558 -568.242889 0.0996199 \t \t 0.00871117 -569.395867 0.14943 \t \t 0.0130668 -570.975623 0.19924 \t \t 0.0174223的-572.153443样品 – user3552683