在一个图中将不同数据框的不同列作为散点图绘制

时间:2020-01-16 09:54:29

标签: python pandas matplotlib scatter

我试图在一个图中绘制来自不同数据帧的不同列(经度和纬度)。但是它们分别绘制在不同的图中。

这是我正在使用的代码

fig,ax=plt.subplots()

cells_final.plot.scatter(x='lon',y='lat')
data_rupture.plot.scatter(x='Longitude',y='Latitude',color='red')
plt.show()

如何将其绘制在一个单一的图中?

3 个答案:

答案 0 :(得分:1)

使用

创建的axes实例(ax
fig, ax = plt.subplots()

并将其作为pandas.DataFrame.plotax参数传递,

fig,ax=plt.subplots()

cells_final.plot.scatter(x='lon',y='lat', ax=ax)
data_rupture.plot.scatter(x='Longitude',y='Latitude',color='red', ax=ax)
plt.show()

或者,如果您希望在同一图中将绘图放在不同的subplots上,则可以创建多个轴

fig, (ax1, ax2) = plt.subplots(1, 2)

cells_final.plot.scatter(x='lon',y='lat', ax=ax1)
data_rupture.plot.scatter(x='Longitude',y='Latitude',color='red', ax=ax2)
plt.show()

答案 1 :(得分:0)

您需要指定轴:

fig,ax=plt.subplots(1,2, figsize=(12, 8))

cells_final.plot.scatter(x='lon',y='lat', ax=ax=[0])
data_rupture.plot.scatter(x='Longitude',y='Latitude',color='red', ax=ax[1])
plt.show()

答案 2 :(得分:0)

Output

感谢@William Miller .......!