散点图(数据帧)与。数据帧.plot(kind='scatter')

2024-09-30 00:34:37 发布

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

我有几个熊猫数据帧。我想在单独的散点图中绘制多个列,并将它们组合为图形中的子图。我想给每个子批次贴上相应的标签。在使子批次标签正常工作之前,我遇到了很多麻烦,直到我发现有两种直接从数据帧绘制的方法;参见SOpandasdoc

ax0 = plt.scatter(df.column0, df.column5)
type(ax0): matplotlib.collections.PathCollection

以及

^{pr2}$

ax.set_title('title')ax1起作用,但对{}不起作用,它返回 AttributeError: 'PathCollection' object has no attribute 'set_title'

我不明白为什么这两种方式存在。第一个使用PathCollections的方法的目的是什么?第二个是在17.0中添加的;第一个是过时的还是有不同的用途?在


Tags: 数据方法图形dfsotitle绘制plt
2条回答

两者的区别在于它们来自不同的库。第一个来自matplotlib,第二个来自pandas。它们执行相同的操作,即创建matplotlib散点图,但是matplotlib版本返回一个点集合,而pandas版本返回matplotlib子批。这使得matplotlib版本更加通用,因为您可以在另一个绘图中使用点的集合。在

正如您所发现的,pandas函数返回一个axes对象。PathCollection对象也可以使用“获取当前轴”功能解释为轴对象。例如:

plot = plt.scatter(df.column0, df.column5)
ax0 = plt.gca()
type(ax0)
^{bq}$

更标准的方法是:

^{pr2}$

此时,欢迎您执行“set”命令,如您的set_title。在

希望这有帮助。在

相关问题 更多 >

    热门问题