【问题标题】:Can Gnuplot handle png transparency?Gnuplot 可以处理 png 透明度吗?
【发布时间】:2014-05-12 13:23:40
【问题描述】:

我正在使用 gnuplot 的 plot 'my_image.png' binary filetype=png with rgbimage 功能将图像叠加在(稀缺的)散点图上。

我的 png 有一个透明背景,所以我一直希望它们能够“尊重”网格和轴,但不幸的是,它们被绘制在它上面,并带有白色、不透明的背景。

有没有办法解决这个问题?

最小的工作示例

文件2091450.png由First Google result for Transparent PNG提供:

set terminal pdfcairo font "CMU Serif" linewidth 4 rounded \
fontscale 1.0 size 29.7cm, 21cm enhanced dashed
set output 'transparency_test.pdf'

set style line 81 lt rgb "#808080"
set style line 80 lt 0  # dashed
set style line 80 lt rgb "#808080"  # grey
set grid back linestyle 80

set border 3 back linestyle 81
plot '2091450.png' binary filetype=png origin=(0,0) dx=1.0 dy=1.0 with rgbimage

【问题讨论】:

标签: gnuplot


【解决方案1】:

几件事:

  • 尽管有 URL 名称,但您的链接只给了我一个 jpg 图像(如果它是透明的,那么您将只得到一个带有 rgbimage 样式的全黑图像)。

  • 要绘制具有透明度的图像,请使用rgbalpha 绘图样式:

    plot 'transparencytest.png' binary filetype=png with rgbalpha
    

    我使用以下文件transparencytest.png 进行测试,效果很好:

  • 为什么不直接把网格和边框放到front层呢?

【讨论】:

    【解决方案2】:

    这是一个经典案例,我最初因为谷歌搜索不当而无法解决:寻找“gnuplot png image透明度”根本没有效率,因为所有关键字都相互交互产生不同的结果.

    但是搜索“rgbimage透明度”要好得多,因为减少了单词之间的干扰,并引导我进入this页面并获得适当的结果:

    不要使用rgbimage,而是使用rgbalpha

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-10
      • 1970-01-01
      • 2013-10-04
      • 2010-10-16
      • 2010-09-07
      • 2013-04-11
      • 1970-01-01
      相关资源
      最近更新 更多