在没有彩色表面的千里马中绘制3D网格

时间:2014-01-14 20:57:55

标签: plot gnuplot maxima

我在Maxima中有一个包含16个不同元素的一维列表x,并将两个元素的每个可能产品绘制为3D图:

g(u,v) := float('x[round(u)]*'x[round(v)]);
plot3d(g(u,v),[u,1,16],[v,1,16],[grid,15,15]);

产生这个结果:

http://i.stack.imgur.com/uKwfe.png

我想要的结果是只有 轮廓线,即网格。我不想要彩色表面。

这似乎是一项微不足道的任务,但手册对此非常不清楚。它说通常,你已经只有网格,但情况并非如此。

在Windows上使用wxMaxima 12.04.0。

2 个答案:

答案 0 :(得分:0)

看起来关键是让Gnuplot输出文件包含行

set style data lines

Maxima对“设置风格......”有自己的想法,你可以通过

看到
set_plot_option ([plot_format, gnuplot]);

然后检查输出文件(默认情况下为$ HOME / maxout.gnuplot)。我不知道如何说服Maxima输出不同的样式命令。作为最后的手段,您可以手动编辑maxout.gnuplot。

答案 1 :(得分:0)

g(u,v) := float('x[round(u)]*'x[round(v)]);
plot3d(g(u,v),[u,1,16],[v,1,16],[grid,15,15], [palette, false]);

[palette,false]选项关闭表面着色并仅绘制网格。但是你仍然可以获得隐藏线移除,Maxima会自动打开。

要获得透明的金属丝网,请执行以下操作:

plot3d(g(u,v),[u,1,16],[v,1,16],[grid,15,15],  [palette, false], 
[gnuplot_postamble, "unset hidden3d;"]);