我正在调查麦克风的频率响应。
为了帮助分析它们,我编写了一个程序,它将输出:到达角度,频率(Hz)和给定角度和频率(dB)的响应。
我编写了一个gnuplot脚本,将所有这些数据绘制成一个三维图形:
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
我知道这有点不寻常,但我想做的是,在一个三维极坐标图上表示这一点,但我无法弄清楚如何去做。下面的(糟糕)绘图显示了我一直试图实现的那种东西:
有人能指出我正确的方向吗?
提前致谢。 戴夫。
<小时/> 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'文件设为here。
当我使用原始脚本绘制相同的文件时,我得到下面的图像(因此所有数据都存在于freqResp.dat文件中):
有人可以帮助我让gnuplot渲染图的前半部分吗? 谢谢戴夫。
答案 0 :(得分:4)
在多位用户的帮助下,最终答案是:
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
感谢所有帮助过的人