溪风沐雪 2022-07-13 11:32 采纳率: 100%
浏览 47
已结题

Seaborn函数库数据可视化图像不持久显示

在使用python的Seaborn函数库绘图的时候,发现有两个Axes-level层级的API(pairplot、lmplot)绘图以后图像无法持久显示,闪一下就没有了,可以明显看到图是绘制出来的,但是只显示一下就消失,另外所有Figure-level层级的API(relplot、catplot)都是同样的现象。
因为大部分是可以显示的,所以基础环境应该没问题
python 3.10.5
matplotlib 3.5.2
seaborn 0.11.2
代码中绘图部分前3行是只显示一下的,后边的是可以正常显示,求解决方案

import matplotlib.pyplot as plt
import seaborn as sns
iris = sns.load_dataset("iris")
sns.pairplot(iris,hue='species') #只显示一下
# sns.lmplot(x="sepal_length", y="sepal_width", hue="species", data=iris) #只显示一下
#sns.relplot(x="sepal_length", y="petal_length", hue="species", style="species", data=iris,kind='line')#只显示一下
# sns.scatterplot(x="sepal_length", y="sepal_width", hue="species", style="species", data=iris)
# sns.lineplot(x="sepal_length", y="petal_length", hue="species", style="species", data=iris)
# sns.stripplot(x="sepal_length", y="species", data=iris)
# sns.swarmplot(x="sepal_length", y="species", data=iris)
# sns.boxplot(x="sepal_length", y="species", data=iris)
# sns.boxenplot(x="sepal_length", y="species", data=iris)
# sns.violinplot(x="sepal_length", y="species", data=iris)
# sns.pointplot(x="sepal_length", y="species", data=iris)
# sns.barplot(x="sepal_length", y="species", data=iris)
# sns.countplot(x="species", data=iris)
# sns.distplot(iris["sepal_length"])
# sns.kdeplot(iris["sepal_length"])
# sns.jointplot(x="sepal_length", y="sepal_width", data=iris, hue="species")
# sns.jointplot(x="sepal_length", y="sepal_width", data=iris, kind="kde", hue="species")
# sns.jointplot(x="sepal_length", y="sepal_width", data=iris, kind="hex")
# sns.jointplot(x="sepal_length", y="sepal_width", data=iris, kind="reg")
# sns.regplot(x="sepal_length", y="sepal_width", data=iris)
plt.show()
  • 写回答

1条回答 默认 最新

  • 脚踏南山 2022-07-13 11:56
    关注

    添加如下代码在本地查看

    import matplotlib.pyplot as plt
    import seaborn as sns
    import time
    iris = sns.load_dataset("iris")
    sns.pairplot(iris, hue='species')  # 只显示一下
    time.sleep(1)
    plt.savefig(f'{time.time()}.png', format='png')
    plt.show()
    
    sns.lmplot(x="sepal_length", y="sepal_width", hue="species", data=iris)  # 只显示一下
    time.sleep(1)
    plt.savefig(f'{time.time()}.png', format='png')
    plt.show()
    

    本地结果

    img


    我这边是正常的,你可以在侧边栏看看,

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 7月21日
  • 已采纳回答 7月13日
  • 赞助了问题酬金5元 7月13日
  • 创建了问题 7月13日

悬赏问题

  • ¥15 网络科学导论,网络控制
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)