【发布时间】:2020-12-25 15:01:46
【问题描述】:
我尝试在带有轮廓的 xy 平面图上绘制 3D 数据。我设法获得了彩色地图,但我几乎没有问题。 我的数据分 3 列(见下面的代码),每行之间有空格。
0.000000000 0.897777778 0.000000000
0.000000000 0.906666667 0.000000000
0.000000000 0.915555556 0.000000000
0.000000000 0.924444444 0.000000000
0.000000000 0.933333333 0.000000000
0.000000000 0.942222222 0.000000000
0.000000000 0.951111111 0.000000000
0.000000000 0.960000000 0.000000000
0.000000000 0.968888889 0.000000000
0.000000000 0.977777778 0.000000000
0.000000000 0.986666667 0.000000000
0.000000000 0.995555556 0.000000000
0.111111111 0.453837597 0.008893913
0.111111111 0.462736374 0.009285188
0.111111111 0.471635150 0.009686812
0.111111111 0.480533927 0.010098938
0.111111111 0.489432703 0.010521720
0.111111111 0.498331479 0.010955318
0.111111111 0.507230256 0.011399894
0.111111111 0.516129032 0.011855617
我的代码如下:
set terminal postscript eps color enhanced "Helvetica" 14
set output 'phiCH_TpFR.eps'
set contour base
set style textbox opaque noborder
unset surface
set style textbox opaque noborder
set cntrparam level discrete 0.5,1,1.5,2,2.5,3
set cntrparam bspline
set isosamples 250, 250
set view map
set xrange [0:10]
set yrange [0.55:0.95]
set cbrange [0:4]
set dgrid3d 50,50,50 gauss .005, .035
set table "contour_CH.txt"
splot "data_sensibilite_correlation_Tpfr_CH"
unset table
unset contour
set surface
set table "dgrid_CH.txt"
splot "data_sensibilite_correlation_Tpfr_CH"
unset table
reset
set pm3d map
unset key
set xrange [0:10]
set yrange [0.55:0.95]
set cbrange [0:4]
set xlabel "{/Symbol e}_{/Symbol q} [%]"
set ylabel "T_b / T_{w hs}"
set cblabel "{/Symbol e}_{{/Symbol F} hs} [%]"
splot 'dgrid_CH.txt' w pm3d, 'contour_CH.txt' w l lc rgb "black", 'contour_CH.txt' every 10 w labels
我的问题如下:
-
我没有设法得到等高线图的标签。我能做些什么来解决这个问题?我注意到在文件“contour_CH.txt”中并非所有的轮廓都有标签。我不知道这是否是我的问题的原因。
# 轮廓 1,标签:2.5
7.29125 0.900642 2.5
7.26953 0.901372 2.5
7.24415 0.902123 2.5
7.21428 0.902917 2.5
7.18137 0.903743 2.5
7.14745 0.904582 2.5
7.11456 0.905415 2.5
7.08473 0.906223 2.5
7.05941 0.906997 2.5
7.03775 0.907755 2.5
7.0183 0.908527 2.5
6.99961 0.909341 2.5
....# 轮廓 2,标签:
9.88889 0.816038 2.5
9.80771 0.818407 2.5
9.75248 0.820019 2.5
.... -
我的坐标轴和颜色图之间有一个空白区域。我不明白为什么,因为我的数据比绘图范围更宽。
提前感谢您的回答,
马丁
【问题讨论】:
-
请以文字形式发布数据,而不是图片形式。
-
你检查过这个吗? stackoverflow.com/a/63788443/7295599
-
您的最小/最大 x 和 y 值是多少?我猜 gnuplot 会自动尝试在最后制作“漂亮”的 tic 数字,这里是:xrange[0:10] 和 yrange[0.55:0.95]。如果您不想要空白,请将范围值设置为精确到 x 和 y 的最小/最大值。
-
感谢您的回答,是的,我检查了您的链接,但无法使其正常工作。复制/粘贴建议的代码并用我的数据替换会导致警告消息:“警告:无法为非网格数据绘制轮廓。请使用“set dgrid3d”。”
-
关于最小/最大 x 和 y 值,我的 dgrid_CH.txt 文件的所有等值曲线都包含 y 轴低于 0.5 和高于 0.99 的值。对于 x 轴,确实是 9.89 而不是 10。
标签: plot label gnuplot contour