matplotlib:颜色条及其文本标签

2023-12-12

我想创建一个colorbar传说heatmap,使得标签位于每个离散颜色的中心。从这里借来的例子:

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import ListedColormap

#discrete color scheme
cMap = ListedColormap(['white', 'green', 'blue','red'])

#data
np.random.seed(42)
data = np.random.rand(4, 4)
fig, ax = plt.subplots()
heatmap = ax.pcolor(data, cmap=cMap)

#legend
cbar = plt.colorbar(heatmap)
cbar.ax.set_yticklabels(['0','1','2','>3'])
cbar.set_label('# of contacts', rotation=270)

# put the major ticks at the middle of each cell
ax.set_xticks(np.arange(data.shape[1]) + 0.5, minor=False)
ax.set_yticks(np.arange(data.shape[0]) + 0.5, minor=False)
ax.invert_yaxis()

#labels
column_labels = list('ABCD')
row_labels = list('WXYZ')
ax.set_xticklabels(column_labels, minor=False)
ax.set_yticklabels(row_labels, minor=False)

plt.show()

这会生成以下图:

pmesh plot

理想情况下,我想生成一个具有四种颜色的图例栏,并且对于每种颜色,其中心有一个标签:0,1,2,>3。如何才能实现这一目标?


import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import ListedColormap

#discrete color scheme
cMap = ListedColormap(['white', 'green', 'blue','red'])

#data
np.random.seed(42)
data = np.random.rand(4, 4)
fig, ax = plt.subplots()
heatmap = ax.pcolor(data, cmap=cMap)

#legend
cbar = plt.colorbar(heatmap)

cbar.ax.get_yaxis().set_ticks([])
for j, lab in enumerate(['$0$','$1$','$2$','$>3$']):
    cbar.ax.text(.5, (2 * j + 1) / 8.0, lab, ha='center', va='center')
cbar.ax.get_yaxis().labelpad = 15
cbar.ax.set_ylabel('# of contacts', rotation=270)


# put the major ticks at the middle of each cell
ax.set_xticks(np.arange(data.shape[1]) + 0.5, minor=False)
ax.set_yticks(np.arange(data.shape[0]) + 0.5, minor=False)
ax.invert_yaxis()

#labels
column_labels = list('ABCD')
row_labels = list('WXYZ')
ax.set_xticklabels(column_labels, minor=False)
ax.set_yticklabels(row_labels, minor=False)

plt.show()

你们非常亲密。一旦您引用了颜色条轴,您就可以对其执行任何您想要的操作,包括将文本标签放在中间。您可能想要调整格式以使其更加明显。

demo

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

matplotlib:颜色条及其文本标签 的相关文章

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

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • 如何生成给定范围内的回文数列表?

    假设范围是 1 X 120 这是我尝试过的 gt gt gt def isPalindrome s check if a number is a Palindrome s str s return s s 1 gt gt gt def ge
  • pandas 替换多个值

    以下是示例数据框 gt gt gt df pd DataFrame a 1 1 1 2 2 b 11 22 33 44 55 gt gt gt df a b 0 1 11 1 1 22 2 1 33 3 2 44 4 3 55 现在我想根据
  • 打破嵌套循环[重复]

    这个问题在这里已经有答案了 有没有比抛出异常更简单的方法来打破嵌套循环 在Perl https en wikipedia org wiki Perl 您可以为每个循环指定标签 并且至少继续一个外循环 for x in range 10 fo
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 使用 Pycharm 在 Windows 下启动应用程序时出现 UnicodeDecodeError

    问题是当我尝试启动应用程序 app py 时 我收到以下错误 UnicodeDecodeError utf 8 编解码器无法解码位置 5 中的字节 0xb3 起始字节无效 整个文件app py coding utf 8 from flask
  • NameError:名称“urllib”未定义”

    CODE import networkx as net from urllib request import urlopen def read lj friends g name fetch the friend list from Liv
  • Python:字符串不会转换为浮点数[重复]

    这个问题在这里已经有答案了 我几个小时前写了这个程序 while True print What would you like me to double line raw input gt if line done break else f
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • Python:尝试检查有效的电话号码

    我正在尝试编写一个接受以下格式的电话号码的程序XXX XXX XXXX并将条目中的任何字母翻译为其相应的数字 现在我有了这个 如果启动不正确 它将允许您重新输入正确的数字 然后它会翻译输入的原始数字 我该如何解决 def main phon
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 如何改变Python中特定打印字母的颜色?

    我正在尝试做一个简短的测验 并且想将错误答案显示为红色 欢迎来到我的测验 您想开始吗 是的 祝你好运 法国的首都是哪里 法国 随机答案不正确的答案 我正在尝试将其显示为红色 我的代码是 print Welcome to my Quiz be
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce

随机推荐

  • Highchart 工具提示显示最近点

    我一直在尝试制作 highchart 工具提示来显示最近的点 以防 x 轴值未在不同系列中对齐 这是我到目前为止得到的 http jsfiddle net Yw8hb 5 Highcharts wrap Highcharts Tooltip
  • Gorilla Mux 中的配置 CORS:POST 请求出现 403 错误

    我有一个 API 目前正在尝试使用它的端点之一 该端点用于 POST 请求 该端点正在按预期工作 该API正在云端运行 我用它进行了测试curl它很完美 然后从我的反应应用程序中我试图使用它 但我得到了403 status code 在浏览
  • 比较两个包含大量对象的列表

    我需要比较两个列表 其中每个列表包含大约 60 000 个对象 最有效的方法是什么 我想选择源列表中目标列表中不存在的所有项目 我正在创建一个同步应用程序 其中 c 扫描目录并将每个文件的属性放在列表中 因此 有一个源目录列表和另一个目标目
  • 从 php 进行端口检查

    我正在尝试从 phplist 安装连接到 gmail pop 服务器 但失败了 但我不确定我的网站主机是否打开了端口 995 他们说他们已经打开了它 但我对此表示怀疑 有没有办法可以从 php 脚本检查它 他们在 Windows 服务器上运
  • 数组在 Java 内部是如何工作的?

    发布此查询是为了基本上了解诸如 对象是类实例或数组 数组是数组的子类Object class 在 Java 中 除原始类型之外的所有实例化对象都是对象 这是我对 Java 中数组的理解 考虑到下面的程序 dummy java class C
  • 如何将 Android 中的大型 pdf 文件加载到我的 web 视图中

    我无法将大型 pdf 文件 有 900 页 加载到我的 在我的 Android 应用程序中的 webview 我尝试了这段代码并且在任何 其他 pdf 但是当我尝试打开一个大的 pdf 时 它显示 无预览 可用的 wvReport getS
  • 从单独的脚本更新 WebExtension webRequest.onBeforeRequest 侦听器 URL 设置

    我目前正在创建一个 WebExtension 其中我在发出的 Web 请求上注册一个侦听器 如下所示 main js chrome webRequest onBeforeRequest addListener main function u
  • matlab脚本编辑

    我想在两种情况下编辑 matlab 脚本 1 在linux终端运行的matlab命令窗口中 如何创建和编辑脚本文件 使用 edit filename 将调用交互式编辑器 这在 Linux 服务器上运行时是不需要的 2 在emacs中 有没有
  • 在 JavaScript 中设置剃刀变量

    我正在尝试从 JavaScript 函数内将表单上的组合框的内容分配给剃刀变量 就像这样
  • 控制window.onbeforeunload事件

    出于好奇 我可以控制 window onbeforeunload 事件 例如检查用户是否决定离开页面或留在其中 我可以根据他的决定发出警报或某些功能吗 如果是 请告诉我 我知道 window onbeforeunload 是一个事件 向用户
  • 脚本标签 - 异步和延迟

    我有几个关于属性的问题async defer为了
  • 使用 Jquery 和 jgestures 在 Cordova 中滑动

    当涉及到使用 jQuery jQuery mobile 进行滑动时 Stackoverflow 中有很多主题 然而 它们似乎都没有按照我想要的方式工作 以下是我的phonegap应用程序的索引页面的结构 作为this主题推荐 我尝试了jge
  • 如何统计每个病人预约了多少名医生?

    我需要的结果如下 PatientID Doctors Patient1 3 Patient2 2 Patient3 1 预订的桌子是这样的 GPS Table PatientID DoctorID DATE Patient1 Doctor1
  • 如何从给定数据库中删除所有带有前缀“bkp”的表?

    我有一个 SQL Server 2005 在该服务器中我有 3 个数据库 gt a b c 如果我想删除表 仅来自数据库 c 的表 表的名称应以 bkp 开头 表应在一天前创建 尝试这个 USE C GO SELECT DROP TABLE
  • 我需要在 mysql 字段中查找并替换 \n

    我有这样的数据 1 街 n2 街 nmycity nmytown 我想要做的是将 n 替换为 char 10 因为我需要在 db 字段中进行真正的换行符 我有 UPDATE data set value REPLACE value n ch
  • 缓存阻塞实际上如何提高性能?

    我正在阅读有关缓存阻塞的内容这个英特尔页面 It says 阻塞是一种众所周知的优化技术 可以帮助避免许多应用程序中的内存带宽瓶颈 阻塞背后的关键思想是通过确保数据在多次使用时保留在缓存中来利用应用程序中可用的固有数据重用 提供一个例子 f
  • 我可以在 Intel Mac 上为 M1 Mac 构建 PyInstaller 二进制文件吗?

    I have recently found out that PyInstaller now works on macOS Monterey so I tried to build a binary When testing on my I
  • RXTX 串行连接 - 阻塞 read() 的问题

    我正在尝试使用 RXTX 库来阻止 Windows XP 和 7 上的串行通信 我已经测试了两端与超级终端的连接 它工作完美 我使用以下代码设置了连接 为了清楚起见 省略了异常处理和防御检查 private InputStream inSt
  • 按因子将比例列添加到数据框

    我正在尝试将一列添加到由按因子标准化的值组成的数据框中 例如 data frame 261 obs of 3 variables Area Factor w 29 levels Antrim Ards 1 1 1 1 1 1 1 1 1 2
  • matplotlib:颜色条及其文本标签

    我想创建一个colorbar传说heatmap 使得标签位于每个离散颜色的中心 从这里借来的例子 import matplotlib pyplot as plt import numpy as np from matplotlib colo