当我使用seaborn在Python中绘制绘图时,有时会在我想要的绘图之间得到一个空白绘图。我这里的数据是一个简单的dataframe (代码中没有显示)。当我制作图3时,它正确地显示出来,就像图4一样,但是图5是空白的,并且我认为应该在名为图6的窗口中绘制图5的图。我在Spyder IDE中使用Python 3.6。
为什么会出现一个空白的图形窗口?
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.figure(3)
fig = sns.countplot(data=df, x=df['month'], hue=df['reasons'])
plt.show()
plt.figure(4)
fig = byMonth['twp'].plot()
plt.show()
plt.figure(5)
fig = sns.lmplot(x='new_ind', y='title', data=byMonth)
plt.show()发布于 2018-02-05 18:17:15
由于seaborn.lmplot创建了自己的图形,并且是在创建plt.figure(5)之后创建的,因此lmplot如下图所示。由于没有为plt.figure(5)分配任何内容,因此此数字将保持为空。
解决方案是删除plt.figure(5),因为不需要这个额外的数字。
作为参考,那些列在seaborn API documentation中"Axis Grids“下的绘图将创建它们自己的图形:
FacetGrid,因子图,lmplot,PairGrid,pairplot,JointGrid,jointplot。
https://stackoverflow.com/questions/48620060
复制相似问题