在极坐标图

时间:2015-07-05 07:05:27

标签: gnuplot

我在极坐标系中用标签绘制了许多点。现在我想在切线方向上旋转标签。所以我必须轮换

  • 在t = 0处绘制的点,r =任意0度,
  • 在t = pi / 2处绘制的点,r =任意90度,
  • 在t = pi处绘制的点,r =任意180度,依此类推。

我发现'旋转'功能在这里:http://gnuplot.sourceforge.net/demo/textrotate.html

但是只能旋转角度的固定值。 我想过......像:

plot 'point-data.dat'  using ($1/360*2*pi):($2):($1) with labels rotate by variable font "arial,8"

有可能吗?

1 个答案:

答案 0 :(得分:0)

我尝试做同样的事情并找到了一个“解决方法”来做到这一点。它并不完美,但它适用于我的情况: 您可以在循环中执行多个绘图,并为每个绘图指定不同的文本角度:

数据文件data.txt:

#alpha  r   label   rotation
0   1   text1   10
.2  1   text2   20
.4  1   text3   30
.6  1   text4   40
.8  1   text5   50
1   1   text6   60

绘图命令:

isequal(x1,x2,x3)=(x1==x2?x3:1/0)
setonly(x1,x2,x3)=((x1==x2)?roto=x3:1/0)
set polar
plot for [k=0:7] "data.txt" u (isequal(($0),k,($1))):((setonly( ($0),k,($4) )*0.0)+($2)):3 w labels rotate by roto