matplotlib 在样式表中设置标题颜色

kxkpmulp  于 12个月前  发布在  其他
关注(0)|答案(4)|浏览(120)

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

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

我还想改变标题的字体颜色。从这些设置来看,axes.titlecolor似乎是一个很好的猜测,但它不起作用。如何做到这一点的任何想法?

epggiuax

epggiuax1#

尝试使用

# 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()**会提供一个可以调整的属性列表。
范例:

import matplotlib as mpl

mpl.rcParams['text.color'] = 'w'
mpl.rcParams['xtick.color'] = 'w'
mpl.rcParams['ytick.color'] = 'w'
mpl.rcParams['axes.labelcolor'] = 'w'

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

1yjd4xko

1yjd4xko2#

我并不完全熟悉Mpl样式表实际上是如何实现的,但我猜它们只是预先编辑的mpl rc文件。
如果它们确实是mpl 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参数文件或样式表。
分析mpl rc文件,如果你运行类似'grep title matplotlibrc'的东西,它会吐出它在文件中找到单词title的唯一示例:

特殊的文本大小勾选标签,轴,标签,标题等,见rc

axes.titlesize:large #axes标题的字体大小

因此,似乎没有一个默认的颜色设置的标题-或者更确切地说,如果有它的所谓的其他东西是不直接明显的
'grep color matplotlibrc'输出rc文件中单词color的所有示例
同样,似乎没有任何直接相关的标题颜色,甚至默认文本颜色。
仔细观察一下Mpl API,axes.set_title()接受像color=这样的kwargs,它们只是被标记为有效的Text属性。
http://matplotlib.org/1.4.3/api/text_api.html#matplotlib.text.Text列出了有效的文本属性。对于颜色,它只说“任何matplotlib颜色”
我想在mpl源代码中的某个地方有一行代码,处理当没有为给定的Text对象指定颜色kwarg时该怎么做。在某个地方有一个默认颜色,我想可能只是'k'。现在我还不清楚如何更改该设置。
很抱歉讲了这么长时间,希望对大家有所帮助。

toiithl6

toiithl63#

如果你想改变默认的标题颜色,你可以在matplotrc文件中设置text.color属性(默认为黑色)。当然,它会改变所有文本输出的颜色。

jljoyd4f

jljoyd4f4#

这可以工作(Refrenced From Here)

title_obj = plt.title('my random fig') 
plt.getp(title_obj)                    
plt.getp(title_obj, 'text')            
plt.setp(title_obj, color='r')    #Sets it to the color red

相关问题