Matplotlib 刻度标签 fontweight 仅限于几个选项

看下面的代码


import numpy as np

import matplotlib.pyplot as plt


x = np.linspace(0.0001, 30, 1000)

y = np.sin(x)/x


fig, ax = plt.subplots(1, 1)

ax.plot(x, y)

ax.tick_params(which="major", labelsize=14, width=1.3)


for label in ax.get_xticklabels():

    label.set_fontweight(550) # If change to 551, label will be bold-like

根据此处,参数可以是数值或字符串。但是,我测试了两者。似乎标签 fontweight 与 [0, 550] 中的 fontweight 参数相同,在 [551 , 1000] 范围内,它变为粗体。此外,semibold和bold似乎具有相同的字体重量。


我假设 fontweight 是线性变化的,但显然不是。任何人都可以解释为什么会这样?


红糖糍粑
浏览 550回答 1
1回答

跃然一笑

通常情况下,一个字体只有字体粗细的数量有限,例如Regular,Medium,Bold等。字体权重不是无限的。数值与有限字体粗细之间存在对应关系。有关更多详细信息,请参阅此处。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python