使用gnuplot,我需要设置export GDFONTPATH=${HOME}/fonts
以显示正确的字体。或者,我有这条警告消息“打开字体时无法找到/打开字体”arial“,使用内部不可缩放的字体”。
使用Python,我尝试使用此代码自动调用gnuplot。
GNUPLOT=distutils.spawn.find_executable('gnuplot')
my_env = os.environ
my_env["GDFONTPATH"] = '${HOME}/fonts'
p = Popen([GNUPLOT, config["file_path"]], shell=False, env=my_env)
p.communicate()
但是,我有警告信息。可能有什么问题?如何在Python中应用环境变量?
Could not find/open font when opening font "arial", using internal non-scalable font
答案 0 :(得分:2)
我感觉到您正在使用的问题' $ {HOME}'直。试试这个:
my_env['GDFONTPATH'] = os.path.join(my_env['HOME'], 'fonts')
答案 1 :(得分:1)
让我提出一个稍微不同的解决方案:
pngcairo
终端,其结果比png
终端产生更好的结果,其他cairo终端(wxt
和pdfcairo
)使用{{3 }}
这样,您只能创建一个包含内容的文件~/.fonts.conf
:
<?xml version="1.0"?><!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>~/fonts</dir>
</fontconfig>
就是这样。 (可能您必须使用例如fc-list | grep $HOME/fonts
检查可用的字体名称,但通常字体文件名不言自明)。然后使用例如
set terminal pngcairo font 'DroidSerif'
(使用gnuplot 4.6.4进行测试)