我正在使用没有root帐户的FreeBSD系统的商业服务器。我用我的帐户安装gnuplot。但是,我无法设置字体。因此,我复制了我的主目录中的字体文件,例如〜/ usr / fonts
然后,我在gnuplot文件中使用了以下脚本:
set term png enhanced font '/home/Tom/usr/fonts/truetype/msttcorefonts/verdana.ttf'
set out 'xrd.png'
set xlabel '2 {/Symbol q}';
set ylabel 'Count';
set xrange [:];
set yrange [:];
unset key;
set border lw 1;
plot './data.txt' using 1:2 with l linetype 1 linewidth 1;
set term xterm;
set out ;
但是,运行脚本时出现以下错误:
gdImageStringFT: Could not find/open font while printing string q with font Symbol
gdImageStringFT: Could not find/open font while printing string q with font Symbol
这可能是因为我使用的字体'verdana.ttf'不正确。 但是,我可以使用Debian系统在我自己的PC上使用这种字体。
答案 0 :(得分:4)
请勿使用/Symbol
。那将不会使用Verdana字体。
根据this page,Verdana字体包含希腊字母。
通过将set encoding utf8
添加到您的gnuplot文件来使用UTF-8编码。然后使用您喜欢的文本编辑器将unicode符号(根据this page:θ,希腊小写字母theta,U + 03B8)插入标签字符串。
答案 1 :(得分:0)
您可以使用“/符号”。只需在文件中添加“set encoding utf8”行 至少,它适用于arial字体。
答案 2 :(得分:0)
以下是使用gnuplot
打印UTF-8字符的所有先决条件:
set encoding utf8
enhanced
必须可用并为所选终端类型设置:set terminal … enhanced …
未能观察到最后一点,导致以下gnuplot
错误:
Unable to convert "…�…": the sequence is invalid in the current charset (UTF-8),
falling back to iso_8859_1
将绘图文件从Microsoft Windows™传输到GNU / Linux时,可能会出现这种情况。
可以使用以下GNU / Linux命令检查绘图定义文件的字符编码:
$ file -bi bad.plt
text/plain; charset=iso-8859-1
要更正绘图定义文件的字符编码,请使用以下命令:
$ iconv -f iso-8859-1 -t utf-8 -o good.plt bad.plt