6

更新:此问题已在较新版本 (>5.0) 的 gnuplot 中得到解决;请参阅@andyras 的回答。


我很难让 gnuplot 在非 postscript 终端中创建带有粗体和增强文本的标签。以下脚本

#!/usr/bin/env gnuplot

reset

set terminal pdfcairo enhanced color lw 3 size 3,2 font 'Arial-Bold'
set output 'output.pdf'

set tics scale 0

plot -x title 'normal text', \
-2*x t 'enhanced_{text}', \
-3*x t '{/Arial-Bold attempt to specify_{font}}'

set terminal pngcairo enhanced color lw 3 size 400,300 font 'Arial-Bold'
set output 'output.png'
replot

set terminal postscript enhanced color lw 3 size 6,4 font 'Arial-Bold'
set output 'output.eps'
replot

reset

生成以下 eps(使用 转换为 png convert output.eps -rotate 90 outputeps.png):

在此处输入图像描述

这很好。但是,当我使用 pdf 或 png 终端时,结果如下所示:

在此处输入图像描述

请注意,虽然所有标签文本都应该是粗体,但只有没有任何增强文本的标签是粗体。此外,当我尝试手动指定字体(最后一行标题)时,字体不同(恢复为默认值?)。

在不使用 postscript 终端时,我应该期待这种行为吗?是否有另一种指定字体的方法(即命名方案在 postscript 之外是否不同)?

4

2 回答 2

7

从 5.0 版开始,gnuplot 有一个新的语法来处理这个问题:

 "normal text {/Times:Bold boldface-newfont} {/:Italic slanted-default-font } back to normal text"]

这些括号也可以嵌套。

于 2015-12-21T18:50:32.027 回答
-2

以 pdf 格式获得更好的结果。

使用增强的 eps 终端绘制曲线。然后使用 Imagemagic 将您的输出转换为 pdf 格式。使用命令

转换 myPlot.eps myPlot.pdf

使用此命令的默认分辨率会产生较差的输出。这可以通过使用值为 300 的密度选项来克服。修改后的命令看起来像

转换-密度 300 myPlot.eps myPlot.pdf

我发现这将 eps 文件的所有文本格式保留在 pdf 文件中。

于 2014-10-16T10:15:18.173 回答