如何用gnuplot创建一个三维极坐标图
我正在调查麦克风的频率响应。
为了帮助分析它们,我编写了一个程序,输出:到达角度,频率(Hz)和给定角度和频率(dB)下的响应。
我写了一个gnuplot脚本,将所有这些数据绘制成一个3d图形:
gnuplot的代码是:
set xlabel "Arrival Angle (degrees)" font "arial,8"
set ylabel "Frequency (Hz)" font "arial,8"
set zlabel "Gain (dB)" font "arial,8"
set grid lc rgbcolor "#BBBBBB"
set xrange[-180:180]
set yrange[0:20000]
set zrange[-60:0]
unset key
set view 30,56,0.98
splot 'freq.dat' u 1:2:3 with pm3d
我知道这有点不同寻常,但我想要做的是用一种3d极坐标图表示这一点,但我无法弄清楚如何去做。 下面的(坏)图显示了我一直试图实现的事情:
任何人都可以指引我走向正确的方向吗?
提前致谢。 戴夫。
2013年4月26日更新
我一直在玩,并创建了一个更新的脚本:
reset
set title "3D version using cylindrical coordinate system"
set ticslevel 0.0
set view 30,56,0.98
set angles degrees
set mapping cylindrical
set parametric
set zrange[-60:0]
unset key
splot 'freqResp.dat' u 1:3:2 with pm3d
这个脚本几乎做我需要的东西,但不幸的是它只渲染了图的后半部分。 前半部分仍然没有插槽。 例如:
如果有人想玩上面的脚本,我已经把'freqResp.dat'文件放在这里。
当我用原始脚本绘制相同的文件时,我得到下面的图像(因此所有数据都存在于freqResp.dat文件中):
任何人都可以帮助我获得gnuplot来渲染图的前半部分吗? 谢谢戴夫。
在几个用户的帮助下,最终的答案是:
reset
set title "3D version using cylindrical coordinate system"
set ticslevel 0.0
set view 30,56,0.98
set angles degrees
set mapping cylindrical
set parametric
set zrange[-60:0]
unset key
set pm3d depthorder
splot 'freqResp.dat' u 1:3:2 with pm3d
感谢所有的帮助
链接地址: http://www.djcxy.com/p/70995.html