python - 如何在 altair 中安装新字体并在 alt.TitleParams 中指定它

标签 python altair

我想知道是否可以安装在 altair 中使用的字体以在 alt.TitleParams 中使用。对于这个例子,没有指定字体,我得到一个默认的字体和大小。

import altair as alt
import pandas as pd

source = pd.DataFrame({
    'a': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'],
    'b': [28, 55, 43, 91, 81, 53, 19, 87, 52]
})

alt.Chart(source, title = alt.TitleParams(text = 'Example Chart')).mark_bar().encode(
    x='a',
    y='b'
)

enter image description here

改变字体大小我得到更大的字母:

alt.Chart(source, title = alt.TitleParams(text = 'Example Chart', fontSize=24)).mark_bar().encode(
    x='a',
    y='b'
)

enter image description here

但是,当我添加字体样式时,大小不再起作用:

alt.Chart(source, title = alt.TitleParams(text = 'Example Chart'
                                          , fontSize=24
                                          , fontStyle = 'Arial')).mark_bar().encode(
    x='a',
    y='b'
)

enter image description here

无论指定什么字体,文本看起来总是一样的:

alt.Chart(source, title = alt.TitleParams(text = 'Example Chart'
                                          , fontSize=24
                                          , fontStyle = 'Calibri')).mark_bar().encode(
    x='a',
    y='b'
)

同样的事情:

enter image description here

我想知道如何显示正确的字体,不仅是标准字体,还有非标准字体以及如何安装它们。

最佳答案

fontStyle 指的是字体的样式,例如“粗体”、“斜体”等。如果要通过名称指定字体,请使用font 参数:

alt.Chart(
    source,
    title=alt.TitleParams(
        text='Example Chart',
        fontSize=24,
        fontStyle='italic',
        font='Times'
    )
).mark_bar().encode(
    x='a',
    y='b'
)

enter image description here

关于python - 如何在 altair 中安装新字体并在 alt.TitleParams 中指定它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73338942/

相关文章:

python - 更新 Python 以用于 AWS CLI

python - 初始化字体需要很长时间

python - 将过滤器变换应用于 Altair 图,同时保留所有图例类别

jupyter-notebook - 在 Jupyter 中,如何判断您使用的是哪个浏览器?

python - 如何在不破坏文件对象的情况下检查文件对象的大小?

python - 如何删除 3D numpy 数组中的特定元素

python - 使用正则表达式(或另一个 python 模块)来比较文本/字符?

python - 更改 Altair 图例中的形状颜色

python - 具有不同 x 和 y 编码的 Altair 选择

javascript - 在 Altair/Vega 中,有没有办法在点击时运行任意 Javascript 代码?