如何调整Pandas(Matplotlib)绘制图表的标题字号?
调整pandas绘图标题字号的常用方法
pandas 的DataFrame.plot()是对matplotlib绘图能力的二次封装,接口本身不会把所有matplotlib支持的样式参数都暴露为可直接传入的关键字参数——这也是翻遍官方文档、源码都找不到标题字号直传kwarg的原因:目前该接口仅对外暴露了坐标轴刻度、轴标签的字号设置入口,标题的细粒度样式调整需要通过plot返回的Axes实例做属性配置,常规实现共有两种:
方法1:拆分标题设置逻辑,直接指定字号
不再把标题字符串直接传给plot()方法,而是将标题设置动作挪到Axes对象的set_title方法中,直接传入字号参数:
import pandas as pd import pathlib as Path a_path = Path('../data.csv') a_dataframe = pd.read_csv(a_path) # 存储plot返回的matplotlib Axes实例 ax = a_dataframe.plot(figsize=(50,25), fontsize=40) # 在set_title中同时指定标题内容和字号 ax.set_title("Some Title", fontsize=60)
方法2:保留原plot传参方式,直接修改已有标题对象的属性
如果已经习惯在plot()方法中传入标题字符串,也可以拿到Axes上已生成的标题文本对象,直接修改字号属性:
import pandas as pd import pathlib as Path a_path = Path('../data.csv') a_dataframe = pd.read_csv(a_path) ax = a_dataframe.plot(title='Some Title', figsize=(50,25), fontsize=40) # 直接修改当前标题对象的字号 ax.title.set_fontsize(60)
注:原代码中的路径字符串存在引号混用的语法问题(
Path('../'data.csv')),会触发路径解析错误,编写代码时注意前后引号配对即可。
内容的提问来源于stack exchange,提问作者Matthew Ogbuehi
相关产品推荐
相关产品推荐

