【问题标题】:Unable to use seaborn plotting features in Visual Studio无法在 Visual Studio 中使用 seaborn 绘图功能
【发布时间】: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 不是问题,您是否看到我做错了什么来阻止热图显示?

标签: python visual-studio matplotlib scikit-learn seaborn


【解决方案1】:

你可以删除这些行

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

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

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

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

【讨论】:

    猜你喜欢
    • 2019-01-04
    • 1970-01-01
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 2020-11-15
    相关资源
    最近更新 更多