如何一次分配多个图例标签?

2024-01-19

我有以下数据集:

x = [0, 1, 2, 3, 4]
y = [ [0, 1, 2, 3, 4],
      [5, 6, 7, 8, 9],
      [9, 8, 7, 6, 5] ]

现在我用以下方法绘制它:

import matplotlib.pyplot as plt
plt.plot(x, y)

但是,我想用此命令标记 3 个 y 数据集,这会在以下情况下引发错误.legend()叫做:

lineObjects = plt.plot(x, y, label=['foo', 'bar', 'baz'])
plt.legend()

File "./plot_nmos.py", line 33, in <module>
  plt.legend()
...
AttributeError: 'list' object has no attribute 'startswith'

当我检查lineObjects:

>>> lineObjects[0].get_label()
['foo', 'bar', 'baz']
>>> lineObjects[1].get_label()
['foo', 'bar', 'baz']
>>> lineObjects[2].get_label()
['foo', 'bar', 'baz']

Question

有没有一种优雅的方法来分配多个标签,只需使用.plot() method?


您可以迭代线条对象列表,以便单独分配标签。使用内置 python 的示例iter功能:

lineObjects = plt.plot(x, y)
plt.legend(iter(lineObjects), ('foo', 'bar', 'baz'))`

Edit:更新到 matplotlib 1.1.1 后,它看起来像plt.plot(x, y),其中 y 作为列表的列表(由问题作者提供)不再起作用。在将 y 传递为numpy.array(假设(numpy)[http://numpy.scipy.org/] 之前已导入)。

在这种情况下,使用plt.plot(x, y)(如果 2D y 数组中的数据排列为列 [轴 1])或plt.plot(x, y.transpose())(如果 2D y 数组中的数据排列为行 [axis 0])

Edit 2:正如@pelson 所指出的(见下面的评论),iter功能是不必要的并且简单plt.legend(lineObjects, ('foo', 'bar', 'baz'))完美运作

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

如何一次分配多个图例标签? 的相关文章

  • 没有任何元数据的 zip 文件

    我想找到一种简单的方法来压缩一堆文件 而无需任何文件元数据 例如时间戳 这zip命令似乎总是保留元数据 我没有找到禁用元数据的方法 我希望解决方案是一个命令或最多一个 python 脚本 谢谢 正如一些帖子已经指出的那样 zip 标头中的大
  • 从正在运行的 python 脚本检测优化标志是否为 -O 或 -OO

    有时我想生成一个子进程 其优化标志与启动父进程时使用的优 化标志相同 我可以使用类似的东西 optimize not debug 但这样我就可以匹配两者 O and OO flags 是否有一些 python 内部状态包含该信息 经过一番深
  • 在Python3.6中调用C#代码

    由于完全不了解 C 编码 我希望在我的 python 代码中调用 C 函数 我知道有很多关于同一问题的问答 但由于一些奇怪的原因 我无法从示例 python 模块导入简单的 c 类库 以下是我所做的事情 C 类库设置 我使用的是 VS 20
  • 从字符串到类型的词法转换

    最近 我尝试用Python存储和读取文件中的信息 遇到了一个小问题 我想从文本文件中读取类型信息 从 string 到 int 或 float 的类型转换非常有效 但从 string 到 type 的类型转换似乎是另一个问题 当然 我尝试了
  • 在python中将文本文件解析为列表

    我对 Python 完全陌生 我正在尝试读取包含单词和数字组合的 txt 文件 我可以很好地读取 txt 文件 但我正在努力将字符串转换为我可以使用的格式 import matplotlib pyplot as plt import num
  • 如何使用Python将WebP图像转换为Gif?

    我已经尝试过这个 from PIL import Image im Image open this webp im save that gif gif save all True 这给了我这个错误 类型错误 不支持的操作数类型 tuple
  • python 中分割字符串以获得一个值?

    需要帮助 假设我在名为 input 的变量中有一个字符串 Sam Person name kind input split 通过执行上述操作 我得到两个具有不同字符串 Sam 和 Person 的变量 有没有办法只获取第一个值 name S
  • Python BeautifulSoup XML 解析

    我编写了一个简单的脚本来使用 BeautifulSoup 模块解析 XML 聊天日志 标准 soup prettify 工作正常 只是聊天日志中有很多绒毛 您可以在下面看到我正在使用的脚本代码和一些 XML 输入文件 Code import
  • 如何使用 python urllib 在 HTTP/1.1 中保持活力

    现在我正在这样做 Python3 urllib url someurl headers HOST somehost Connection keep alive Accept Encoding gzip deflate opener urll
  • 在径向(树)网络x图中查找末端节点(叶节点)

    给定下图 是否有一种方便的方法来仅获取末端节点 我所说的端节点是指那些具有一个连接边的到节点 我认为这些有时被称为叶节点 G nx DiGraph fromnodes 0 1 1 1 1 1 2 3 4 5 5 5 7 8 9 10 ton
  • 如何使用Python的super()来更新父值?

    我对继承很陌生 之前所有关于继承和 Python 的 super 函数的讨论都有点超出我的理解 我当前使用以下代码来更新父对象的值 usr bin env python test py class Master object mydata
  • Python:计算数据帧列中所有行中特定字符的实例数

    我有一个包含列 toaddress ccaddress body 的数据框 df 我想迭代数据帧的索引 以获取 toaddress 和 ccaddress 字段中电子邮件地址的最小 最大和平均数量 这是通过计算这两列中每个字段中的 和 的实
  • 将 Pandas 列中的列表拆分为单独的列

    这是我在 pandas 数据框中的 特征 列 Feature Cricket 82379 Kabaddi 255 Reality 4751 Cricket 15640 Wildlife 730 LiveTV 13 Football 4129
  • 将输入发送到 python 子进程而不等待结果

    我正在尝试为一段代码编写一些基本测试 该代码通常通过 stdin 无休止地接受输入 直到给出特定的退出命令 我想检查程序是否在给出一些输入字符串时崩溃 经过一段时间来考虑处理 但似乎无法弄清楚如何发送数据而不是陷入等待我不知道的输出关心 我
  • 如何在与应用程序初始化文件不同的文件中迭代 api 路由

    我有一个 apiroutes py 文件 其中定义了许多路由 例如 api route api read methods GET api route api write methods POST 其中 api 是导入 from import
  • Flask WTForms 使用变量自动填充 StringField

    我有一个表格 我想用上一页收到的信息自动填充一些字段 但如果他们想调整它 它需要是可更改的 我正在为我的 SelectField 使用动态创建的列表 但添加 StringField 并不成功 请参阅下面的我的代码 forms py clas
  • Scipy 稀疏 Cumsum

    假设我有一个scipy sparse csr matrix代表下面的值 0 0 1 2 0 3 0 4 1 0 0 2 0 3 4 0 我想就地计算非零值的累积和 这会将数组更改为 0 0 1 3 0 6 0 10 1 0 0 3 0 6
  • 检查字符串是否只有字母和空格 - Python

    试图让 python 返回一个字符串仅包含字母和空格 string input Enter a string if all x isalpha and x isspace for x in string print Only alphabe
  • 使用 Python 生成类似于 Messenger 或 kik 代码的圆形二维码

    我可以使用 Python 生成圆形 QR 码 就像 Facebook Messenger 或 kik 使用的那样吗 我访问了很多网站 但找不到这种类型的二维码 默认情况下 Python 生成方形 QR 码 但在我的项目中我想要圆形 QR 码
  • Django South - 将 null=True 字段转换为 null=False 字段

    我的问题是 转变的最佳做法是什么null True场变成null False使用 Django South 的字段 具体来说 我正在与ForeignKey 你应该先写一个数据迁移 http south aeracode org docs t

随机推荐

  • javascript 全局变量 - 保护

    我在基于 Html Javascript 构建的 Web 应用程序上使用一些全局变量 我跨页面 或其中的一部分 使用这些变量 有时它们被用作 ajax 调用的发布数据 我的问题是 这有多安全 当然 我可以为这些变量设置不同的值 例如使用控制
  • 如何从内存分配发生在C层的Python脚本将float*数组传递给C方法

    我试图从Python脚本调用C方法 C方法调用反过来C 方法 我使用 malloc 在 getResults 方法内分配数组 现在的问题是如何将参数传递给 python 脚本中的 float oresults 其内存分配发生在 C 层内 这
  • 如何使用 Spring Hibernate 配置包级别 @TypeDefs

    我需要配置 TypeDefs 以在包级别使用自定义 Type 当我按照以下方式配置它时 我收到 ClassNotFoundException 但是当我将 TypeDefs 放在类级别时 它工作正常 我发现了类似的堆栈溢出帖子 https s
  • 在recyclerview末尾添加进度条

    在我的应用程序中 我发送了一个齐射请求 该请求逐一获取列表项 而不是一次全部获取 我想在获取数据时在回收器视图的末尾实现一个进度条 updateAdapter 类更新适配器 我正在考虑使进度条在 recyclerview 滚动侦听器中可见
  • Unix 套接字,SOCK_SEQPACKET 与 SOCK_DGRAM

    似乎至少有 3 种不同的本地 unix 套接字类型 AF UNIX SOCK STREAM SOCK DGRAM and SOCK SEQPACKET 虽然我知道一个SOCK STREAM为您提供双向字节流 如 TCP 或双向管道 另外两个
  • 访问WPF用户控件值

    我在 WPF 用户控件中有 2 个文本框 在 WPF 窗体上有两个按钮 如何访问我使用 WPF 用户控件的主窗体的按钮单击事件上的这些文本框值 首先 请记住WPF 不是 WinForms 理论上你应该数据绑定您的文本框到属性 然后更改属性的
  • 字符串中的 ImageSource 不起作用?

    我的项目文件夹中有一堆 tif 图像 我也将其添加到位于 Templates Team Logos 的文件夹中的 Visual Studio 项目中 现在如果我设置一个图像源说
  • 如何获取 bufferedImage 的缩放实例

    我想获得缓冲图像的缩放实例 我这样做了 public void analyzePosition BufferedImage img int x int y img BufferedImage img getScaledInstance ge
  • PHP 相当于 Ruby 的 @instance_variable?

    我想知道是否有一种更短 更好或更干净的方法来在 PHP 中分配和使用类变量 然后通过 this gt instance variable class Bar internal variables var foo Hello World pu
  • 当内存中的类对象已经是二进制(C/C++)时为什么要进行序列化?

    我的猜测是 数据分散在物理内存中 即使类对象的数据在虚拟内存中也是连续的 因此为了正确发送数据 需要重新组装数据 并且能够通过网络发送 一附加步骤是将主机字节顺序转换为网络字节顺序 这是对的吗 正确的序列化可用于将数据发送到任意系统 这些系
  • 在 Laravel Backpack 中 - 查看详细信息和 XLS 下载中的列数据被截断

    如果列数据大约超过 50 个字符 则该列将被截断为 50 个左右 addColumn 函数有 type gt text 最后有 这既包含在详细信息弹出窗口中 也包含在 XLS 下载中 问题是 可以通过任何配置增加此限制吗 是的你可以 有一个
  • 什么是 ARM Thumb 指令集?

    在 ARM11TechnicalRefManual 第 1 34 节的 Thumb 指令集 下 它说 Thumb指令集是最常用的32位ARM指令的子集 Thumb指令有16位长 并且有相应的32位ARM指令 对处理器模型具有相同的效果 任何
  • WCF 模拟/身份验证

    我已经看过模仿的例子 但仍然有问题 结构的一些细节 ASP net Windows 身份验证WCF 托管在 IIS 中 当前使用允许匿名用户 我想要实现的是允许将经过身份验证的 Windows 登录传递到 WCF 进行访问控制 例如阻止匿名
  • 可视化两个数值数组之间的差异

    我有两个长度相等的数值数组 其中一个数组的元素值始终 gt 第二个数组中对应 相同索引 元素的值 我试图在一张图中可视化 i 相应元素之间的差异 ii 两个数组中对应元素的值 我尝试绘制 CDF 如下所示 import numpy as n
  • 将字符串转换为以逗号分隔的双精度变量(0,07)

    在 C 中 我要读取一个双精度变量 该变量用逗号分隔 0 07 我首先从 Excel 中读取一个字符串 然后尝试将其转换为双精度 string str 0 07 Actually from Excel double number strto
  • FULL OUTER JOIN 将表与 PostgreSQL 合并

    下列的这个帖子 https stackoverflow com q 44562726 2508539当我应用给出的答案时 我仍然遇到问题 Vao Tsun https stackoverflow com users 5315974 vao
  • 来自参数的 Oracle“IN 子句”

    我对 Oracle 非常不熟悉 只是想让它发挥作用 我看过here https stackoverflow com questions 1573877 selecting values from oracle table variable
  • Android:如何在不使用 JDBC、PHP 或任何其他 Web 服务的情况下将数据发送到 MySQL DB? [复制]

    这个问题在这里已经有答案了 我正在开发一个 Android 应用程序来将数据发送到 MySQL DB 我正在使用 Apache 服务器 我知道使用 JDBC PHP 将数据发送到 MySQL DB 现在的挑战是不使用 JDBC 和其他 We
  • CABasicAnimation-animationDidStop 未调用

    我正在制作 CABasicAnimation 问题是animationDidStop 委托方法没有被调用 我不知道为什么 但希望有人知道 这是我的动画 CABasicAnimation theAnimation theAnimation C
  • 如何一次分配多个图例标签?

    我有以下数据集 x 0 1 2 3 4 y 0 1 2 3 4 5 6 7 8 9 9 8 7 6 5 现在我用以下方法绘制它 import matplotlib pyplot as plt plt plot x y 但是 我想用此命令标记