您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用matplotlib面向对象的界面进行seaborn绘图

使用matplotlib面向对象的界面进行seaborn绘图

这在某种程度上取决于您使用的是哪种功能

Seaborn中的绘图功能大致分为两类

通过采用显式ax参数并返回Axes对象来标识第一组。如此建议,您可以将它们传递Axes给它们,从而以“面向对象”的方式使用它们:

f, (ax1, ax2) = plt.subplots(2)
sns.regplot(x, y, ax=ax1)
sns.kdeplot(x, ax=ax2)

轴级功能将仅绘制到,Axes并且不会与图形混淆,因此它们可以在面向对象的matplotlib脚本中完美地愉快地共存。

第二组功能(图级)的特征在于,生成的图可能包含多个轴,这些轴始终以“有意义”的方式组织。这意味着这些功能需要完全控制图形,因此不可能将图形绘制lmplot到已经存在的图形上。调用函数总是会初始化图形并将其设置为要绘制的特定图。

但是,一旦调用lmplot,它将返回type的对象FacetGrid。该对象具有一些对生成的图进行操作的方法,这些方法对图的结构有所了解。它还在FacetGrid.figFacetGrid.axes参数处公开了基础图形和轴数组。该jointplot功能非常相似,但是它使用一个JointGrid对象。因此,您仍然可以在面向对象的上下文中使用这些功能,但是所有自定义必须在调用功能之后进行。

其他 2022/1/1 18:32:14 有562人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶