在绘图旁边显示(离散)颜色条作为(自动选择的)线条颜色的图例

2024-02-09

我试图制作一个显示许多线条的图,但很难区分它们。它们有不同的颜色,但我想让它很容易显示哪条线是哪条线。普通的图例并不能很好地工作,因为我有超过 10 行。

这些行遵循逻辑顺序。我想(1)从颜色图中自动选择它们的颜色(最好是具有平滑排序的颜色,例如 viridis 或彩虹)。然后我希望(2)在颜色条旁边有刻度线以对应于索引i对于每一行(或者更好的是来自字符串数组的文本标签textlabels[i]).

这是一小段代码(有一些空白,我不确定要使用什么)。我希望这能说明我正在尝试的事情。

import numpy as np
import matplotlib.pyplot as plt

# Genereate some values to plot on the x-axis
x = np.linspace(0,1,1000)

# Some code to select a (discrete version of) a rainbow/viridis color map
...

# Loop over lines that should appear in the plot
for i in range(0,9):
    # Plot something (using straight lines with different slope as example)
    plt.plot(i*x)


# Some code to plot a discrete color bar next 
# to the plot with ticks showing the value of i   
...

我目前有这个。我希望颜色条上的刻度值为i,即 0, 1, 2, ... 旁边作为刻度线。
我现在拥有的示例图。现在很难区分这些线条。 https://i.stack.imgur.com/E2oxm.png


一个人通过获取颜色图plt.get_cmap("name of cmap", number_of_colors)。 该颜色图可用于计算绘图的颜色。它还可用于生成颜色条。

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

n = 10 # how many lines to draw or number of discrete color levels

x = np.linspace(0,1,17)

cmap = plt.get_cmap("viridis", n)

for i in range(0,n):
    plt.plot(i*x, color=cmap(i))

norm= matplotlib.colors.BoundaryNorm(np.arange(0,n+1)-0.5, n)
sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
sm.set_array([])
plt.colorbar(sm, ticks=np.arange(0,n))
plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在绘图旁边显示(离散)颜色条作为(自动选择的)线条颜色的图例 的相关文章

  • 通过最小元素比较对 5 个元素进行排序

    我必须在 python 中使用元素之间的最小比较次数来建模对 5 个元素的列表进行排序的执行计划 除此之外 复杂性是无关紧要的 结果是一个对的列表 表示在另一时间对列表进行排序所需的比较 我知道有一种算法可以通过 7 次比较 总是在元素之间
  • 从字符串中删除识别的日期

    作为输入 我有几个包含不同格式日期的字符串 例如 彼得在16 45 我的生日是1990年7月8日 On 7 月 11 日星期六我会回家 I use dateutil parser parse识别字符串中的日期 在下一步中 我想从字符串中删除
  • 绘制随时间变化的分类数据计数

    我有一个数据框 df 其中有一列包含分类数据 ETH 带有 DateTimeIndex 我想绘制类别counts随着时间的推移 它们按天索引 我最好按年绘制它们 df pd DataFrame County 0 Bexar 3 Nueces
  • 使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

    我有一个 CSV 文件 我正在使用 Python 来解析该文件 我发现文件中的某些行具有不同的列数 001 Snow Jon 19801201 002 Crom Jake 19920103 003 Wise Frank 19880303 l
  • python 相当于 R 中的 get() (= 使用字符串检索符号的值)

    在 R 中 get s 函数检索名称存储在字符变量 向量 中的符号的值s e g X lt 10 r lt XVI s lt substr r 1 1 X get s 10 取罗马数字的第一个符号r并将其转换为其等效整数 尽管花了一些时间翻
  • SQLALchemy .query:类“Car”的未解析属性引用“query”

    我有一个这里已经提到的问题https youtrack jetbrains com issue PY 44557 https youtrack jetbrains com issue PY 44557 但我还没有找到解决方案 我使用 Pyt
  • Python 函数可以从作用域之外赋予新属性吗?

    我不知道你可以这样做 def tom print tom s locals locals def dick z print z name z name z guest Harry print z guest z guest print di
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • 如何使用 OpencV 从 Firebase 读取图像?

    有没有使用 OpenCV 从 Firebase 读取图像的想法 或者我必须先下载图片 然后从本地文件夹执行 cv imread 功能 有什么办法我可以使用cv imread link of picture from firebase 您可以
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 将图像分割成多个网格

    我使用下面的代码将图像分割成网格的 20 个相等的部分 import cv2 im cv2 imread apple jpg im cv2 resize im 1000 500 imgwidth im shape 0 imgheight i
  • 为字典中的一个键附加多个值[重复]

    这个问题在这里已经有答案了 我是 python 新手 我有每年的年份和值列表 我想要做的是检查字典中是否已存在该年份 如果存在 则将该值附加到特定键的值列表中 例如 我有一个年份列表 并且每年都有一个值 2010 2 2009 4 1989
  • 有人用过 Dabo 做过中型项目吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们正处于一个新的 ERP 风格的客户端 服务器应用程序的开始阶段 该应用程序是作为 Python 富客户端开发的 我们目前正在评估 Dabo
  • Python:如何将列表列表的元素转换为无向图?

    我有一个程序 可以检索 PubMed 出版物列表 并希望构建一个共同作者图 这意味着对于每篇文章 我想将每个作者 如果尚未存在 添加为顶点 并添加无向边 或增加每个合著者之间的权重 我设法编写了第一个程序 该程序检索每个出版物的作者列表 并
  • 使用其构造函数初始化 OrderedDict 以便保留初始数据的顺序的正确方法?

    初始化有序字典 OD 以使其保留初始数据的顺序的正确方法是什么 from collections import OrderedDict Obviously wrong because regular dict loses order d O
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某
  • Rocket UniData/UniVerse:ODBC 无法分配足够的内存

    每当我尝试使用pyodbc连接到 Rocket UniData UniVerse 数据时我不断遇到错误 pyodbc Error 00000 00000 Rocket U2 U2ODBC 0302810 Unable to allocate
  • 从列表指向字典变量

    假设你有一个清单 a 3 4 1 我想用这些信息来指向字典 b 3 4 1 现在 我需要的是一个常规 看到该值后 在 b 的位置内读写一个值 我不喜欢复制变量 我想直接改变变量b的内容 假设b是一个嵌套字典 你可以这样做 reduce di
  • Python Selenium:如何在文本文件中打印网站上的值?

    我正在尝试编写一个脚本 该脚本将从 tulsaspca org 网站获取以下 6 个值并将其打印在 txt 文件中 最终输出应该是 905 4896 7105 23194 1004 42000 放置的动物 的 HTML span class
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip

随机推荐

  • 具有 AJAX 功能的 jQuery 循环插件

    我有一个页面 其中有多个图片滑块 例如 50 个滑块 每个滑块有 5 10 张图片 不幸的是 由于滑块数量巨大 页面加载速度非常慢 到目前为止 我一直在使用 Malsup 著名的 jQuery Cycle 插件 然而 这缺乏 AJAX 功能
  • 如何在 Visual Studio 2019 中将当前分支与另一个分支进行比较?

    在 Visual Studio 中 假设以下场景 从 master 创建一个分支 做一些改变 Commit 再次进行一些更改 Commit 当我们进行提交时 下面没有显示任何更改团队资源管理器 gt 更改 如果我们不执行第 5 步Chang
  • 为什么 AWS Lambda 无法到达 FunctionHandler?

    I am 首次将 C 应用程序部署到 Lambda 使用 Mac 因此无法使用 Visual StudioAWS 工具包扩展 https marketplace visualstudio com items itemName AmazonW
  • AngularJS 在表单输入上输入指令时不保存模型值

    我在页面上有以下内容 完整代码在此Plunker http plnkr co edit NZMC0Km3pFUBGXgcVopx p preview 有一个习俗onEnter当在聊天表单输入上按 Enter 键时调用函数的指令 下面的代码片
  • 使用 Websockets 代替 RESTful HTTP 有哪些陷阱?

    我目前正在开发一个项目 需要客户端请求一个大作业并将其发送到服务器 然后 服务器划分作业并以一组 url 进行响应 以便客户端进行 GET 调用并流回数据 我是该项目的新手 目前正在使用 Spring websockets 来提高效率 We
  • 如何让两个div并排对齐? [复制]

    这个问题在这里已经有答案了 我一直试图让两个 div 并排浮动 或者基本上是购物车和物品 即 jcart 和 cartbox 但似乎无法得到它 这是演示 link http asiraj com 我尝试改变float right 在购物车
  • C - 确定使用哪个分隔符 - strtok()

    假设我正在使用strtok 像这样 char token strtok input 有没有办法确定实际使用了哪个令牌 例如 如果输入类似于 Hello there How are you I m good End 我可以找出每个标记使用了哪
  • Angular 2 Setter 和 Getter

    我正在尝试创建一个服务来将数据解析到不同路线上的不同组件 如果我在同一组件上调用后续服务 我会得到所需的结果 但如果我尝试从另一个组件获取设置的结果 该服务将返回未定义的结果 这是我的服务 import Injectable from an
  • 位移位的目的是什么? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在代码中遇到了以下几行 unsig
  • 如何在 Phonegap 3 上使用 plugin.xml 复制自定义 ios 框架

    我目前正在为phonegap 3 制作一个插件 我有一个自定义框架可以使用源文件指令进行复制 在plugin xml中我尝试过
  • 绑定与 SO_BINDTODEVICE 套接字

    我正在 linux ubuntu 13 10 上运行一个项目 它使用原始套接字连接到设备 这是我的代码 builed socket if sockfd socket PF PACKET SOCK RAW htons ETH P ALL 1
  • .Net框架4.0 SDK

    有谁知道是否有 Net 4 0 框架的 SDK 如果有 安装程序将其放在硬盘驱动器的哪个位置 我已经安装了 Visual Studio 2010 旗舰版 但在任何地方都找不到 SDK NET SDK 的最后一个独立版本是 2 0 之后它与W
  • 在线程中“浪费时间”最高效的 CPU 方式是什么?

    我有许多线程 100 个 每个线程一次执行几秒钟 当它们执行时 它们花费大量时间等待另一个系统 串行设备 的响应 我注意到 同时执行 100 个线程可能会占用大量资源 因此我实际上限制了可以同时启动的线程数量 但我想到 在线程内等待外部事件
  • 将功能附加到 Rails 3 中的按钮

    我的网页上显示一组按钮 单击其中一个按钮的效果需要是调用外部 API 可能会收到响应 并更新页面上的某些内容 一些附加信息 这些按钮部分地放置在页面上 并构成用户列表的一部分 这些按钮用于激活和停用列出的用户 我不确定这个设置是否会影响做我
  • when/2 和 ground/1 的逻辑纯度

    问题 我有一个关于逻辑纯度的问题 这个程序纯粹吗 when ground X X gt 2 有关上下文的一些 ir 相关细节 我正在尝试编写具有良好终止属性的纯谓词 例如 我想写一个谓词list length 2描述列表与其长度之间的关系
  • Angular 1.5 组件绑定:检查回调是否存在

    我有一个简单的contactList组件 有 2 个绑定 contacts and onRemove contacts只是要显示的联系人数组 onRemove是一个回调函数 app component contactList templat
  • python:如何在需要时启动和停止记录器

    我正在尝试在 Django 应用程序的代码中记录 sql 语句 目前我在 settings py 中使用以下记录器配置 LOGGING version 1 disable existing loggers False formatters
  • ASP.NET 工作线程可以同时处理多个请求吗?

    我知道 ASP NET 将在池中的单个线程上执行请求 反之亦然吗 单个 ASP NET 请求是否会独占一个工作线程直到请求完成 或者 ASP NET 是否会在多个并发请求之间重复使用同一线程 即使你的第一个陈述也不完全正确 ASP NET可
  • 在列表中搜索元素并将其替换为多个项目

    搜索给定列表的Python方式是什么 a b c 对于元素b替换它并插入多个项目b1 b2 b3这样列表最终读作 a b1 b2 b3 c 使用切片表示法 gt gt gt lst a b c gt gt gt i lst index b
  • 在绘图旁边显示(离散)颜色条作为(自动选择的)线条颜色的图例

    我试图制作一个显示许多线条的图 但很难区分它们 它们有不同的颜色 但我想让它很容易显示哪条线是哪条线 普通的图例并不能很好地工作 因为我有超过 10 行 这些行遵循逻辑顺序 我想 1 从颜色图中自动选择它们的颜色 最好是具有平滑排序的颜色