Gnuplot 3D中的彩色曲面

Gnuplot 3D中的彩色曲面,gnuplot,Gnuplot,我是GNUPLOT的超级粉丝,它并不经常让我失望。通常我只是画2D图形,因为我在热力学中处理的现实是多维的,使用3D并没有真正的帮助。但是我发现了一个例子,我想要一个有彩色平面的3D绘图,但我不想。一个简单的例子是: set terminal wxt size 840,700 font "Arial,16" set origin 0.0, 0.0 set size 1.0000, 1.0000 set xlabel "X" set ylabel "Y" set style line

我是GNUPLOT的超级粉丝,它并不经常让我失望。通常我只是画2D图形,因为我在热力学中处理的现实是多维的,使用3D并没有真正的帮助。但是我发现了一个例子,我想要一个有彩色平面的3D绘图,但我不想。一个简单的例子是:

set terminal wxt size 840,700 font "Arial,16"
set origin 0.0, 0.0 
set size   1.0000,   1.0000
set xlabel "X"
set ylabel "Y"

set style line 1 lt  1 lc rgb "#FF0000" lw 2
set style line 2 lt  1 lc rgb "#00FF00" lw 2

splot "-" using 1:2:3 with lines ls 1 notitle,\
"" using 1:2:3 with lines ls 2 notitle
0 1 0
0 1 1
1 0 1
1 0 0
0 1 0

e
0 0 0
0 1 0
1 1 0
1 0 0
0 0 0

e

pause mouse
它绘制了一个红色和绿色的矩形。但是,我希望矩形的内部为红色或绿色。在2D中,我可以使用填充曲线,但在3D中似乎不起作用。我已经看过一些例子,如何用颜色生成一个复杂的曲面,但我只需要一个彩色的平面曲面。在3D中也应该有一种简单的方法来实现这一点

set object 1 polygon from 0,1,0 to 0,1,1 to 1,0,1 to 1,0,0 to 0,1,0
set object 1 fillstyle transparent solid 0.5 fillcolor "red"

set object 2 polygon from 0,0,0 to 0,1,0 to 1,1,0 to 1,0,0 to 0,0,0
set object 2 fillstyle transparent solid 0.5 fillcolor "dark-green"

set xrange [0:1]; set yrange [0:1]; set zrange [0:1]
set xyplane 0

splot -1 notitle  # this is out of range so it won't show
将矩形描述为50%透明的原因是gnuplot中的隐藏曲面算法仅针对曲面设计;它不能细分任意对象,以便正确渲染一个实体对象被另一个实体对象部分遮挡。

将矩形描述为50%透明的原因是gnuplot中的隐藏曲面算法仅针对曲面设计;它不能细分任意对象,以便正确渲染一个实体对象被另一个实体对象部分遮挡。

完美!非常感谢你,非常完美!非常感谢你