为什么seaborn计数图和直方图以不同的方式显示相同的十六进制颜色?

2023-12-09

我试图在我的论文中保留单一的调色板,我注意到我的直方图的蓝色和我的计数图的蓝色色调略有不同,即使我将它们设置为完全相同的十六进制值。

我是否缺少一个设置,或者这些不同的图不仅仅显示给定的十六进制?我尝试过使用计数图饱和度,但它与颜色不匹配。理想情况下,我的所有直方图都将具有与计数图相同的颜色(以及也使用计数图着色的条形图)。

下面是最小代码示例:

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(rc={'figure.figsize':(20,10)}, font_scale=2)
plt.rcParams['axes.grid'] = False
titanic = sns.load_dataset('titanic')
fig, ax = plt.subplots(1,2)
sns.countplot(x="class", data=titanic, ax=ax[0], color='#5975a4')
sns.histplot(x="who", data=titanic, ax=ax[1], color='#5975a4')

它产生下图:

Different Blues


The countplot有一个饱和度参数(饱和度越高,颜色越“真实”,饱和度越低,颜色越接近灰色)。 Seaborn 在条形图中使用饱和度来使默认颜色看起来“更平滑”。默认饱和度为0.75;它可以设置为1获得“真实”颜色。

The histplot有一个 alpha 参数,使颜色半透明。颜色与背景混合,因此根据背景颜色看起来会有所不同。在这种情况下,alpha似乎默认为0.75。由于这也具有类似于饱和度的效果,histplot不使用饱和度。当在同一个子图中绘制多个直方图时,透明度特别有用。

要获得“真实”颜色,请设置saturation of the countplotalpha of the histplot to 1:

import seaborn as sns
import matplotlib.pyplot as plt

sns.set(rc={'figure.figsize': (20, 10)}, font_scale=2)
plt.rcParams['axes.grid'] = False
titanic = sns.load_dataset('titanic')
fig, ax = plt.subplots(1, 2)
sns.countplot(x="class", data=titanic, ax=ax[0], color='#5975a4', saturation=1)
sns.histplot(x="who", data=titanic, ax=ax[1], color='#5975a4', alpha=1)
plt.show()

sns.histplot and sns.countplot with "full" color

PS:默认情况下,计数图仅使用 80% 的宽度,而直方图则使用整个宽度。如果需要,可以缩小直方图条形,例如sns.histplot(..., shrink=0.8),获得与countplot.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么seaborn计数图和直方图以不同的方式显示相同的十六进制颜色? 的相关文章

  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • DreamPie 不适用于 Python 3.2

    我最喜欢的 Python shell 是DreamPie http dreampie sourceforge net 我想将它与 Python 3 2 一起使用 我使用了 添加解释器 DreamPie 应用程序并添加了 Python 3 2
  • 如何打印没有类型的defaultdict变量?

    在下面的代码中 from collections import defaultdict confusion proba dict defaultdict float for i in xrange 10 confusion proba di
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • 从列表中的数据框列中搜索部分字符串匹配 - Pandas - Python

    我有一个清单 things A1 B2 C3 我有一个 pandas 数据框 其中有一列包含用分号分隔的值 某些行将包含与上面列表中的一项的匹配 它不会是完美的匹配 因为它在其中包含字符串的其他部分 该列 例如 该列中的一行可能有 哇 这里
  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • 使用 OpenPyXL 迭代工作表和单元格,并使用包含的字符串更新单元格[重复]

    这个问题在这里已经有答案了 我想使用 OpenPyXL 来搜索工作簿 但我遇到了一些问题 希望有人可以帮助解决 以下是一些障碍 待办事项 我的工作表和单元格数量未知 我想搜索工作簿并将工作表名称放入数组中 我想循环遍历每个数组项并搜索包含特
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • 循环标记时出现“ValueError:无法识别的标记样式 -d”

    我正在尝试编码pyplot允许不同标记样式的绘图 这些图是循环生成的 标记是从列表中选取的 为了演示目的 我还提供了一个颜色列表 版本是Python 2 7 9 IPython 3 0 0 matplotlib 1 4 3 这是一个简单的代
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f
  • 协方差矩阵的对角元素不是 1 pandas/numpy

    我有以下数据框 A B 0 1 5 1 2 6 2 3 7 3 4 8 我想计算协方差 a df iloc 0 values b df iloc 1 values 使用 numpy 作为 cov numpy cov a b I get ar
  • 改变字典的哈希函数

    按照此question https stackoverflow com questions 37100390 towards understanding dictionaries 我们知道两个不同的字典 dict 1 and dict 2例
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data

随机推荐

  • Excel VBA ADO SQL - From 子句中的语法错误

    VBA ADO 中的以下 SQL 给出 From 子句中的语法错误 错误 Sub RunSQL2 Dim cn As ADODB Connection Dim rs As ADODB Recordset Dim strFile As Str
  • 如何编辑一篇博客文章而不是其他博客文章的 CSS 以获得 5 星级评级系统?

    我最近创建了我自己的博客使用 Google 的 Blogger 当我读完一本特定的书时 我有一个本书的我读过的部分我想要一个静态的地方5星评级系统代替某种形式 也许与CSS 我可以定位每本书 这样我就能够显示1 至 5 星供访客查看 我不知
  • 将 std::mutex 用于由 boost::asio 管理的线程池

    不知何故的后续这个问题 我只是想知道是否可以使用std mutex在由 a 处理的函数中boost asio io service 使用股线是有点不切实际的 从我在升压参考我会说没关系 既然它指出 异步完成处理程序只会从当前正在调用 io
  • 下单后如何获取盈透证券(IBPY)的交易价格和佣金?

    http interactivebrokers github io tws api 也许是一个有用的链接 这张图片来自盈透证券的java API指南 我想要的数字是交易日志中的价格和佣金 from ib opt import Connect
  • Javascript 检测用户是否更改选项卡

    我正在编写一个用于在线测验的网页 我的基本要求是 如果用户更改选项卡或打开新闻窗口 即使没有最小化其浏览器 即如果该人试图从其他窗口 选项卡查看答案 它也必须触发一个事件 停止测验 我怎样才能做到这一点 Note 尽量避免在您的答案中包含前
  • 如何让 Google Cloud Functions 保持温暖?

    我知道这可能会错过使用 Cloud Functions 的初衷 但在我的具体情况下 我使用 Cloud Functions 是因为这是我将 Next js 与 Firebase Hosting 桥接的唯一方法 我不需要使其具有成本效益 等等
  • 放大和缩小按钮 - highcharts

    我在气泡图中有自定义缩放按钮 放大 缩小 当用户单击 放大 按钮时 应该在图表中从左到右进行缩放 类似地 缩小应该以这种方式发生 这与立即发生缩小的重置缩放功能相反 小提琴链接 https jsfiddle net abcdlearner
  • 将数据发布到 colorbox iframe?

    这是我正在使用的代码 从我见过的其他例子来看 这应该有效 但事实并非如此 并且已经确保我使用的是最新的彩盒 function updateFolderCate ID Type colorbox iframe true scrolling f
  • 如何使用 System.out.printf?

    我的老师希望我们在格式方法 在最底部 中显示我们的值 但问题是我们有一个子程序 她没有向我们展示如何使用它 而且我的老师也没有提供帮助 任何建议或帮助将不胜感激 public class SphereCalculations public
  • Android 增强现实应用程序从屏幕点转换列表位置

    我有问题 找不到解决方案 我制作了一个 Android 增强现实应用程序 在我的应用程序中 我有一个兴趣点列表 每个兴趣点都是一个位置 经度 纬度 海拔 我知道我的位置并且我有 相机的 方位角 现在我的问题是 如何在屏幕上绘制这些点 gps
  • pthread_create 并传递一个整数作为最后一个参数

    我有以下功能 void foo void i int a int i int main pthread t thread int i pthread create thread 0 foo void i 编译时 存在一些关于转换的错误 vo
  • 部署到 IIS 7 时诊断跟踪日志记录不起作用

    我正在将站点从 IIS 6 迁移到 IIS 7 但无法查看所有日志 我的system diagnostics配置如下
  • Java JTextPane + JScrollPane:取消/激活自动滚动

    我目前正在用 Java 编写一个简单的聊天 目前我陷入了这个问题 我希望我的输出 JTextPane 的行为就像您期望它从良好的聊天中获得的那样 即默认情况下 当新文本到达时文本会自动滚动 使用 outputfield setCaretPo
  • 如何在 Spark 中向分解结构添加列?

    假设我有以下数据 id 1 payload foo 1 lol 2 foo 2 lol 2 我想分解有效负载并向其中添加一列 如下所示 df df select id F explode payload alias data df df w
  • Codeigniter AOP [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我需要 Codeigniter PHP 框架的 AOP 范例的良好实现 你有什么建议我 面向方面的编程在 PHP 世界中还不是很普遍 我不确定 CI
  • 在 C# 中重用 HttpWebRequest 的连接

    我需要使用 Net 发出 POST 请求 我可以通过 GET 进行身份验证 因此我尝试在同一连接上发出 POST 请求以保持身份验证 问题是我收到 401 Not Authenticated 异常 这意味着连接尚未被重用 HttpWebRe
  • 在 Node js 8 中打印 libuv 线程池大小

    这个链接纯粹指定libuv提供一个线程池 可用于运行用户代码并在循环线程中获得通知 它的默认大小是 4 但是可以在启动时通过设置来更改它UV THREADPOOL SIZE环境变量为任意值 绝对最大值为 128 So in package
  • 在屏幕右下角打开 Chrome 应用程序窗口

    我希望我的 Chrome 应用程序能够打开 使其接触任务栏并恰好偏离屏幕右侧 我当前的代码 chrome app runtime onLaunched addListener function chrome app window creat
  • C编程动态初始化二维数组

    我在这里做了一些愚蠢的事情 但我无法确切地指出是什么 void init data double data int dim x int dim y int i j k data double malloc sizeof double dim
  • 为什么seaborn计数图和直方图以不同的方式显示相同的十六进制颜色?

    我试图在我的论文中保留单一的调色板 我注意到我的直方图的蓝色和我的计数图的蓝色色调略有不同 即使我将它们设置为完全相同的十六进制值 我是否缺少一个设置 或者这些不同的图不仅仅显示给定的十六进制 我尝试过使用计数图饱和度 但它与颜色不匹配 理