Matplotlib样式设置标题颜色

2024-09-27 00:18:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在mpl中设置一个自定义样式表。我在网上找到并修改了一些示例设置:

axes.titlesize  : 18
axes.labelsize  : large
axes.labelcolor : ffffff

我还想更改标题的字体颜色。从这些设置来看,axes.titlecolor似乎是一个很好的猜测,但它不起作用。有什么办法吗?在


Tags: 标题示例颜色字体样式表mpllarge办法
3条回答

可能是稍晚的答案,但无论如何) 如果要更改默认标题颜色,可以设置文本.颜色matplotrc文件中的属性(默认值为黑色)。当然,它会改变所有文本输出的颜色。在

我并不完全熟悉Mpl样式表是如何实现的,但我猜它们只是预先编辑的Mpl-rc文件。在

如果它们确实是mpl-rc文件,那么基于对我当前rc文件的阅读,“轴”中没有标题颜色的属性。在

我的工作是添加风格功能,这些功能可能在rc文件中实现,也可能不会在rc文件中实现:

using_custom_style = true
plt.use('my_style')
...
if using_custom_style:
    ax.set_title('my title', color=my_color_of_choice)
else:
    ax.set_title('my_title')  # this doesn't specify a color so it will just use whatever default vaule mpl knows to use

这并不是最好的解决方法,因为它会给代码增加很多混乱,但当我无法确定默认设置实际存储在mpl param文件或样式表中的位置时,它是唯一可以工作的方法。在

分析mpl rc文件如果您运行类似于'grep title matplotlibrc'的程序,它会显示在文件中找到单词title的唯一实例:

#特殊文本尺寸勾选标签、坐标轴、标签、标题等,请参阅rc

在#轴.标题化:轴标题的大字体大小

所以标题似乎没有默认的颜色设置,或者更确切地说,如果它被称为其他不直接明显的颜色设置

“grep color matplotlibrc”输出rc文件中单词color的所有实例

同样,似乎没有任何与标题颜色或甚至默认文本颜色直接相关的内容。在

仔细看一下Mpl API,axes.set_标题()采用颜色=之类的kwargs,它们只是标记为有效的文本属性。在

http://matplotlib.org/1.4.3/api/text_api.html#matplotlib.text.Text列出有效的文本属性。对于颜色,它只说“任何matplotlib color”

我可以想象在mpl源代码的某个地方有一行代码,当给定的文本对象没有指定color kwarg时,该怎么做。在某个地方有一个默认颜色,我想可能就是“k”。但是,我现在不清楚如何改变这个设置。在

很抱歉你的长篇大论,希望这能有所帮助。在

尝试使用

# Sets title color
text.color = 'your_color'

# Sets other chart attribute colors
xtick.color = 'your_color'
ytick.color = 'your_color'
axes.labelcolor = 'your_color'

打印输出mpl.rcParams.keys()提供了可调整的属性列表。在

示例:

^{pr2}$

资料来源: https://matplotlib.org/users/customizing.html

相关问题 更多 >

    热门问题