【问题标题】:Custom ttf font with python plotly on headless linux machine在无头 linux 机器上使用 python 自定义 ttf 字体
【发布时间】:2022-08-11 17:57:41
【问题描述】:

我想用不同的语言和字体创建情节图,并将它们保存为 python 中的 svgs。 由于该应用程序将安装在没有 GNOME 的 docker 系统上,因此用户将为他们的图表选择语言和字体。

根据 plotly 文档,它支持通过更新布局中的font 属性来安装用于更改字体的系统字体。 例如:font=dict(family=\"Franklin Gothic\", size=18)

我的要求是因为我有没有 GUI 的 linux 系统,所以我不能安装 ttf 字体。并且 python 脚本应该在 Windows、Mac 和 Linux 上运行(对于没有 GNOME 的服务器和 docker 系统)以生成绘图图并使用存储在本地目录中的自定义字体本地 ttf 文件保存 SVG。

import plotly.graph_objects as go
import numpy as np


t = np.linspace(0, 10, 100)

fig = go.Figure()

fig.add_trace(go.Scatter(
    x=t, y=np.sin(t),
    name=\'sin\',
    mode=\'markers\',
    marker_color=\'rgba(152, 0, 0, .8)\'
))

fig.update_layout(title=\'Styled Scatter\',
                  yaxis_zeroline=False, xaxis_zeroline=False)

fig.show()

我想要下面的东西工作: fig.update_layout(font=dict(family=\"/usr/fonts/Noto Sans.ttf\", size=18)

目前,plotly 没有考虑到这一点,它似乎使用了 plotly 安装时安装的默认字体。

会有很大帮助的。

谢谢,

    标签: python-3.x plotly-python


    【解决方案1】:

    只需像这样直接给出字体的url:

    fig.update_layout(font="https://github.com/matomo-org/travis-scripts/raw/master/fonts/Arial.ttf")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-22
      • 2015-05-10
      • 1970-01-01
      • 1970-01-01
      • 2017-07-08
      • 2012-05-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多