机器学习 可视化库Seaborn 为什么我的图 纵坐标一直有黑黑的一团

机器学习 可视化库Seaborn 为什么我的图 纵坐标一直有黑黑的一团?

img

  • 这篇博客: Seaborn学习笔记中的 1. 我们的第一个seaborn图 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 这是seaborn可以做什么的一个例子:

    # Import seaborn
    import seaborn as sns
    
    # Apply the default theme
    sns.set_theme()
    
    # Load an example dataset
    tips = sns.load_dataset("tips")
    
    # Create a visualization
    sns.relplot(
        data=tips,
        x="total_bill", y="tip", col="time",
        hue="smoker", style="smoker", size="size",
    )
    

    在这里插入图片描述
    这里发生了一些事情。 让我们一一介绍:

    # Import seaborn
    import seaborn as sns
    

    Seaborn 是我们需要为这个简单示例导入的唯一库。按照惯例,它是用缩写sns导入的。

    在幕后,seaborn使用matplotlib绘制绘图。对于交互式工作,建议在matplotlib模式下使用Jupyter或IPython接口,否则,当您想查看绘图时,必须调用 matplotlib.pyplot.show()。

    # Apply the default theme
    sns.set_theme()
    

    这使用了matplotlib rcParam系统,并且会影响所有matplotlib图的外观,即使您没有使用seaborn制作它们。除了默认主题之外,还有其他几个选项,您可以独立控制绘图的样式和缩放比例,以在演示上下文之间快速转换您的工作(例如,制作在演讲期间投影时具有可读字体的图形版本)。如果您喜欢matplotlib默认值或喜欢不同的主题,您可以跳过这一步并仍然使用seaborn绘图功能。

    (注:出现错误提示module ‘seaborn’ has no attribute ‘set_theme’,可能为Seaborn版本较老,在cmd中使用指令pip install -U seaborn即可)

    # Load an example dataset
    tips = sns.load_dataset("tips")
    

    文档中的大多数代码将使用load_dataset()函数来快速访问示例数据集。这些数据集没有什么特别之处:它们只是Pandas数据帧,我们可以使用 pandas.read_csv()加载它们或手动构建它们。文档中的大多数示例将使用Pandas数据框指定数据,但seaborn对于它接受的数据结构非常灵活。

    (注:若出现错误“TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”,可能为计算机C:/user/用户名/ 文件夹内无seaborn-data文件夹,该文件夹可在https://github.com/mwaskom/seaborn-data下载)

    # Create a visualization
    sns.relplot(
        data=tips,
        x="total_bill", y="tip", col="time",
        hue="smoker", style="smoker", size="size",
    )
    

    该图采用对seaborn函数relplot()的一次调用,显示了tips数据集中五个变量之间的关系。注意我们是如何仅提供变量的名称及其在图中的作用的。与直接使用matplotlib不同,我们没有必要根据颜色值或标记代码指定绘图元素的属性。在幕后,seaborn处理了从数据帧中的值到matplotlib理解的参数的转换。这种声明式方法让您可以专注于想要回答的问题,而不是关注如何控制matplotlib的细节。