Gnuplot:行不透明度/透明度?

sta*_*010 14 gnuplot

我正在使用Gnuplot成功绘制一些时间序列数据.然而,该系列相当密集(大约5英寸空间中的10,000个样本),当我绘制多个系列时,很难看到在顶部绘制的系列下面.有没有办法让线条有一点不透明度或透明度(即使线条透明,以便在线条下方可见)?

Excel具有此功能,但我更喜欢使用Gnuplot.

以下是我所说的样本.你看不到绿线下面的红线.我实际上想添加第三个时间序列.我正在用命令密谋:

plot [][-3:3] 'samples_all.csv' using 1:7 title 'horizontal' w l ls 1, '' using 1:8 title 'vertical' w l ls 2"
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

and*_*ras 22

好消息!这已在gnuplot中实现.示例语法是

plot x lw 10, -x lw 10 lc rgb "#77000000"
Run Code Online (Sandbox Code Playgroud)

这会将x绘制为红线,将-x绘制为透明黑线(它看起来是灰色的).rgb规范中的第一对两个字符定义了alpha(透明度)通道("#AARRGGBB").正常的语法("#RRGGBB")仍然有效.

old(gnuplot <5.0左右)的答案供参考:

如果要为时间序列数据绘制线条,则答案为否(请参阅此处的讨论).您不能将线条样式设置为透明.透明度仅适用于在曲线下填充,并且必须打印到正确的端子类型.

我最近自己遇到了这个问题,我希望这个功能将在未来版本的gnuplot中添加.

  • @ stackoverflowuser2010 - `plot sin(x)w filledcurves y1 = 0 fs transparent solid .5,cos(x)w filledcurves y1 = 0 fs transparent solid .5`.这只是绘制sin和余弦,用你的数据来试试.由于您的数据非常密集,因此填充x轴不会产生任何影响(除了现在您获得透明度). (4认同)