使用gnuplot在笛卡尔平面上绘制平面
我试图用gnuplot重现我在线性代数书上找到的一个图形。这是原始图像 您可以看到两个方程描述的两个平面之间的交点:使用gnuplot在笛卡尔平面上绘制平面,gnuplot,Gnuplot,我试图用gnuplot重现我在线性代数书上找到的一个图形。这是原始图像 您可以看到两个方程描述的两个平面之间的交点: 2u+v+w=5 4u-6v=-2 我假设为了使用gnuplot绘制第一个方程,我必须将其转换为以下形式: splot 5-2*x-y 其中u->x;v->y和w->z是自由变量。但结果与预期大不相同。有线索吗 您概述的方法是有道理的,但是,结果可能与您预期的相去甚远。 我建议您使用gnuplot中的箭头函数绘制单行。 此示例将生成一个与您显示的非常相似的绘图(但只有一个平面
- 2u+v+w=5
- 4u-6v=-2
您概述的方法是有道理的,但是,结果可能与您预期的相去甚远。
我建议您使用gnuplot中的
箭头
函数绘制单行。此示例将生成一个与您显示的非常相似的绘图(但只有一个平面): 稍微旋转一下,你会得到这样一个图形:
“但结果与预期的大不相同”——怎么会这样?你期待什么?(另外,请不要将绘图的旋转与原始图形进行比较——您的x轴大多指向右侧,他们的点位于“页面外”)您是否被迫使用
gnuplot
?对于这样的数字,如果您熟悉LaTeX,您可以使用其他工具获得更好的结果。我非常熟悉LaTeX,一开始我就开始使用MetaPost,但与Gnuplot相比,MP需要更多的代码。我不知道TikZ软件包。对您的解决方案有一些小评论:您可以使用将对象多边形从x1、y1、z1设置为x2、y2、z2设置为…
将平面绘制为多边形,标签和箭头可以按照图形
单位绘制和放置,例如,将箭头从0,0,0设置为图1,0,0
@Daniele:这个答案对你有帮助吗?
set term gif
set output "demo_plane.gif"
# define your axis limits:
xmax = 6.5
xmin = -1.5
ymax = 8.5
ymin = -1.5
zmax = 5.5
zmin = -0.5
set xrange [xmin:xmax]
set yrange [ymin:ymax]
set zrange [zmin:zmax]
# remove the original axis
unset border
unset xtics
unset ytics
unset ztics
# define you data points:
x1 = 3.0
y1 = -1.0
z1 = 0.0
x2 = -1.0
y2 = 7.0
z2 = 0.0
x3 = -3.0
y3 = 7.0
z3 = 4.0
x4 = 1.0
y4 = -1.0
z4 = 4.0
# define 'arrow' without head:
set arrow 1 from x1,y1,z1 \
to x2,y2,z2 nohead
set arrow 2 from x2,y2,z2 \
to x3,y3,z3 nohead
set arrow 3 from x3,y3,z3 \
to x4,y4,z4 nohead
set arrow 4 from x4,y4,z4 \
to x1,y1,z1 nohead
# draw new axis manually (again, using arrow):
set arrow 5 from 0,0,0 \
to 6,0,0
set arrow 6 from 0,0,0 \
to 0,6,0
set arrow 7 from 0,0,0 \
to 0,0,5
# annotate axis labels:
set label "u" at 6.25,0,0
set label "v" at 0,6.25,0
set label "w" at 0,0,5.25
# plot will not show when empty, include dummy plot command:
set parametric
splot x1, y1, z1 not