发布时间:2024-04-16 09:01
样式是定义图表可视化外观的配置,它由一组预置的rcParams
参数构成。matplotlib
预置了一系列样式风格,可直接使用。
样式相关模块为style
。
matplotlib.style.available
返回本机可用样式的列表。
列表只读,样式更新后,需要使用matplotlib.style.reload_library()
重新加载样式。
In [1]: import matplotlib.style as style
In [2]: style.available
Out[2]:
[\'Solarize_Light2\',
\'_classic_test_patch\',
\'bmh\',
\'classic\',
\'dark_background\',
\'fast\',
\'fivethirtyeight\',
\'ggplot\',
\'grayscale\',
\'seaborn\',
\'seaborn-bright\',
\'seaborn-colorblind\',
\'seaborn-dark\',
\'seaborn-dark-palette\',
\'seaborn-darkgrid\',
\'seaborn-deep\',
\'seaborn-muted\',
\'seaborn-notebook\',
\'seaborn-paper\',
\'seaborn-pastel\',
\'seaborn-poster\',
\'seaborn-talk\',
\'seaborn-ticks\',
\'seaborn-white\',
\'seaborn-whitegrid\',
\'tableau-colorblind10\']
matplotlib.style.library
以字典的形式返回所有样式的定义,字典键为样式名称,值为定义样式的 RcParams
对象。
字典对象也是只读的,更新样式后,需要使用reload_library()
重新加载样式。
In [6]: style.library[\'fast\']
Out[6]:
RcParams({\'agg.path.chunksize\': 10000,
\'path.simplify\': True,
\'path.simplify_threshold\': 1.0})
matplotlib.style.reload_library()
重新加载样式。
matplotlib.style.use(style)
将matplotlib
的绘图样式设置为某种样式。
使用default
样式可以将样式为恢复到默认样式。
该函数只会更新style
中定义的rcParams
配置,其余rcParams
配置保持不变。
参数style
有四种取值:
str
:样式名称或者样式文件的路径/url。通过style.available
查看可用的样式名称。dict
:以rcParams
配置项和值为键值对的字典。Path
:指向样式文件的Path
对象。list
:样式支持组合使用,将多个样式配置配置放置在列表中,matplotlib
将逐个执行列表中每个元素的配置,元素可以为str
、Path
或者dict
,列表右边的元素会覆盖前面元素的配置。import matplotlib.pyplot as plt
plt.bar([1,2,3],[1,2,3])
plt.show()
import matplotlib.pyplot as plt
plt.style.use(\'ggplot\')
plt.bar([1,2,3],[1,2,3])
plt.show()
import matplotlib.pyplot as plt
plt.style.use([\'ggplot\',\'dark_background\'])
plt.bar([1,2,3],[1,2,3])
plt.show()
import matplotlib.pyplot as plt
plt.subplot(221)
plt.bar([1,2,3],[1,2,3])
plt.style.use(\'ggplot\')
plt.subplot(222)
plt.bar([1,2,3],[1,2,3])
plt.style.use(\'grayscale\')
plt.subplot(223)
plt.bar([1,2,3],[1,2,3])
plt.style.use([\'ggplot\',\'grayscale\'])
plt.subplot(224)
plt.bar([1,2,3],[1,2,3])
plt.show()
参见https://matplotlib.org/gallery/style_sheets/style_sheets_reference.html
https://matplotlib.org/tutorials/introductory/customizing.html