无法在 Visual Studio 中使用 seaborn 绘图功能

Posted

技术标签:

【中文标题】无法在 Visual Studio 中使用 seaborn 绘图功能【英文标题】:Unable to use seaborn plotting features in Visual Studio 【发布时间】:2019-01-21 19:34:56 【问题描述】:

我编写了代码以从 CSV 文件中读取某些数据,使用 sklearn 库对数据执行 PCA 分析,然后将结果数据绘制为热图。该代码在运行时没有显示任何错误,但它也没有输出任何图形,只输出一条 AxesSubplot(0.125,0.11;0.62x0.77) 的行。

我想知道 Visual Studio 是否无法显示这样的图,如果是这样,我在这个项目中使用什么 IDE 会更好。如果没有,任何人都可以看到会阻止此代码显示热图的问题吗?复制下面的相关代码

    import os
    import matplotlib as mpl
    if os.environ.get('DISPLAY','') == '':
        print('no display found. Using non-interactive Agg backend')
        mpl.use('Agg')
    import matplotlib.pyplot as plt
    import numpy as np
    import seaborn as sns
    sns.set()
    from sklearn.preprocessing import StandardScaler
    from sklearn.decomposition import PCA
    import pandas as pd

    # Scaling the data for PCA
    scaler = StandardScaler()
    x = StandardScaler().fit_transform(data)

    pca = PCA(n_components = 2)

    pca.fit(x)
    finSet = pca.transform(x)

    hm = sns.heatmap(finSet)

    plt.show()

【问题讨论】:

对于 python 开发,任何编辑器都可以。否则,尝试您找到的任何 IDE,然后得出使用哪一个的结论。提供软件推荐确实是完全主观的。 出于好奇,因为 IDE 不是问题,您是否看到我做错了什么来阻止热图显示? 【参考方案1】:

你可以删除这些行

if os.environ.get('DISPLAY','') == '':
    print('no display found. Using non-interactive Agg backend')
    mpl.use('Agg')

这些行用于查询代码是否在有显示器的环境中运行。如果没有显示,则不应尝试在屏幕上创建绘图窗口。

但是,即使您有一个显示器,但os.environ 没有"DISPLAY" 键,代码也会错误地假设不应创建绘图窗口。至少在 Windows 上似乎是这样。

您可能还想告知此代码的来源他们的错误。

【讨论】:

以上是关于无法在 Visual Studio 中使用 seaborn 绘图功能的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Visual Studio 中键入

在 Visual Studio 2015 中无法识别 LocalDB

无法在visual studio中使用指针和fstream运行程序

无法在设计器 Visual Studio 2015 中打开表单(使用 C#)

无法在 Visual Studio 2010 c# 中使用 SoundPlayer 播放声音

在 Visual Studio 2010(64 位操作系统)中无法使用水晶报告