- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在绘制一个 3D“栅栏图”,每个栅栏有多种颜色。我的示例数据可以在这里找到:
https://gist.github.com/anonymous/a926221ea96e92e86332
我使用以下方法绘制这些数据:
colors = "red red red red red"
splot for [i=1:words(colors)] 'input.sep.txt' index i u 2:1:3 w lines lc rgb word(colors,i)
线条绘制没有问题,我相信它们绘制正确。我的问题是:如何填充线下方,使其看起来像实心墙(即一直向下到 0 z 值)?我尝试使用 w pm3d
,但这实际上并没有绘制轴上可见的任何内容。
最佳答案
最好的选择是使用pm3d
。为此,您必须对数据文件进行一些更改:您必须复制每一行,将副本的 z 值更改为 0
并添加一个新行,即前两个数据行
1 1 2
2 1 4
必须成为
1 1 2
1 1 0
2 1 4
2 1 0
等等。稍后您仍然需要两个连续的空行来分隔不同的“墙”。
如果您可以控制数据输出,则可以更改输出例程,或者可以使用命令行工具,例如 sed
sed 's/^\([0-9]* [0-9]* \)\(.*\)$/&\n\1 0\n/' gistfile1.txt
或awk
:
awk '1; {print $1,$2,0,"\n"}' gistfile1.txt
进行转换。当然,这可以在 gnuplot 中即时完成。一个完整的工作脚本是:
filename = 'gistfile1.txt'
sed = '< sed ''s/^\([0-9]* [0-9]* \)\(.*\)$/&\n\1 0\n/'' '
set autoscale cbfix
set palette defined (0 'red', 1 'blue')
set pm3d depthorder
unset colorbox
unset key
set ticslevel 0
splot sed.filename using 1:2:3:(column(-2)) with pm3d
使用 gnuplot 4.6.5 和示例数据得到的结果是:
一些附加说明:
column(-2)
使用 block 编号(相邻 block 由两个空行分隔)作为颜色索引。set autoscale cbfix
,您可以更好地控制用于平面的颜色。定义的设置调色板(0“红色”,1“绿色”,2“蓝色”)
。关于gnuplot - 使用 splot 填充 3D 线下方的区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550223/
我正在尝试使用以下代码绘制两个二维标量,一个作为热图,一个作为叠加轮廓: set contour base set cntrparam levels incremental 0,0.25,1.25 u
我有一个包含 4 列数据的数据文件,前三列指定一个点 (x,y,z),第四列是 1、2 或 3 - 我希望该点根据第四列(即,如果是 2,则将点着色为红色,如果是 3,则为绿色,如果是 1,则为蓝色)
我的印象是在点之间引入一条空线会产生不连续的图。 如果文件 Box.dat 包含以下内容,我预计会出现两个断开的线段。但是我在 z 平面上得到一个正方形。如何让 gnuplot 只连接未被换行符分隔的
我正在绘制一个 3D“栅栏图”,每个栅栏有多种颜色。我的示例数据可以在这里找到: https://gist.github.com/anonymous/a926221ea96e92e86332 我使用以
是否可以将黑色矩形(在 z = 0 平面中)添加到 gnuplot 中的一个点?我试过绘图: splot 0 在调整范围和 pm3d 选项时导致(使用不同的参数)各种不同的颜色。我确实找到了在 2d
免责声明:我是 Gnuplot 的新手,所以我可能遗漏了一些明显的东西...... 对于我必须给出的演示,我正在尝试使用 Gnuplot 创建交互式版本的 this情节。 到目前为止,我已经想出了以下
我有一个 gnuplot 脚本,它从数据生成一个表面图。我对 z 轴进行了对数缩放,例如在 gnuplot.info 上的示例中1 - 就像在示例中一样,我在情节的“底部”有很多空房间。 在该示例中,
如何在具有这种数据结构的 Gnuplot 中绘制(3D 绘图)矩阵。我找不到将第一行和第一列用作 x 和 y 刻度的方法(或忽略它们) ,5,6,7,8 1,-6.20,-6.35,-6.59,-6.
我是一名优秀的程序员,十分优秀!