修改pandas条形图的图例

2023-11-22

当我用熊猫制作条形图并且想更改图例中标签的名称时,我总是很烦恼。例如考虑以下代码的输出:

import pandas as pd
from matplotlib.pyplot import *

df = pd.DataFrame({'A':26, 'B':20}, index=['N'])
df.plot(kind='bar')

enter image description here Now, if I want to change the name in the legend, I would usually try to do:

legend(['AAA', 'BBB'])

但我最终得到的是这样的:

enter image description here

事实上,第一条虚线似乎对应于一个附加补丁。

所以我想知道这里是否有一个简单的技巧来更改标签,或者我是否需要使用 matplotlib 独立地绘制每个列并自己设置标签。谢谢。


更改 Pandas 的标签df.plot() use ax.legend([...]):

import pandas as pd
import matplotlib.pyplot as plt

fig, ax = plt.subplots()
df = pd.DataFrame({'A':26, 'B':20}, index=['N'])
df.plot(kind='bar', ax=ax)
#ax = df.plot(kind='bar') # "same" as above
ax.legend(["AAA", "BBB"]);

enter image description here

另一种方法是通过执行相同的操作plt.legend([...]):

import matplotlib.pyplot as plt
df.plot(kind='bar')
plt.legend(["AAA", "BBB"]);

enter image description here

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

修改pandas条形图的图例 的相关文章

随机推荐

  • Python - 如何使用日期时间重命名文本文件

    我正在使用 Python v2 x 想知道如何重命名已知的文本文件 例如 text txt 以包含当前日期和时间 任何帮助将不胜感激 os rename text txt time strftime Y m d H M S txt 请注意
  • 插入后导航属性返回 null

    我已将应用程序从 EF4 迁移到 EF5 我将以下代码与以前的版本一起使用来获取新添加项目的相关实体 Student s new Student s Name name s ClassID cID db Students Add s db
  • 从数据框中提取带有条件的列名称

    dput new structure list ID c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 A1 c 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0
  • exec() 和 phantomjs 的绝对路径问题

    我在用着幻影JS用于以编程方式截取网页屏幕截图的目的 我的网络服务器在 Linux 64 位上运行 场景 My test php file exec phantomjs version o e print r o echo e I open
  • 对“kill”的未定义引用

    我用 C 语言为 ARM7 嵌入式系统开发了一个应用程序 现在我想用 C 编译并链接它 以便使用一些 C 功能 为此 我正在使用mipsel elf g 代替mipsel elf gcc 我可以用以下命令编译我的代码mipsel elf g
  • 为什么 ng-hide 不适用于自定义指令?

    我正在阅读 angularjs org 上的开发人员指南的指令部分 以刷新我的知识并获得一些见解 我试图运行其中一个示例 但指令 ng hide 不适用于自定义指令 这里是jsfiddle http jsfiddle net D3Nsk
  • 如何在 iOS 模拟器中测试动态类型(较大字体)

    可以手动更改 iOS 中的动态类型设置 设置 gt 常规 gt 辅助功能 gt 较大文本 但这似乎在当前的模拟器 撰写本文时为 v9 3 中不起作用 并且手动执行此操作并不是需要自动化的解决方案 问题 有没有办法启动具有动态类型设置的应用程
  • Silverlight构造函数注入视图模型+设计模式

    我正在尝试在 Silverlight 4 中编写可测试的 ViewModel 我目前使用 MVVM light 我使用 AutoFac IoCContainer 做得很好 但是 要注入绑定到视图的 ViewModel 的构造函数 我有以下构
  • java 使用套接字发送文件

    我正在尝试使用 Java 将文件从一台计算机发送到另一台计算机 我编写了下面的代码 如果发送方和接收方都在同一台计算机上启动 则它可以正常工作 但如果它们在不同的计算机上工作 则接收到的文件大小比原始文件大并且已损坏 注意 我正在尝试传输最
  • 没有参数的模板类“template<>”是什么意思?

    不带参数的模板类是什么意思 例如 我们采用一个计算阶乘的模板类 其模板参数为 N N 基本上 这是一个类 template
  • 开始使用 PM2 时如何将生产模式添加到 sailsjs 应用程序

    要在生产模式下启动 sailsjs 您需要附加 prod Run node app js prod 我使用 PM2 和一个简单的 json 文件进行设置 其中包含进程名称和脚本名称 以启动节点进程 我如何使用 PM2 传递生产参数 Read
  • 使用 JavaScript 的 FileReader 接口检测文件的内容类型

    我一直在为 Web 应用程序中的纯文本文件设置导入脚本 我的脚本如下 function dataImport files confirm Are you sure you want to import the selected file T
  • 如何从字符串traceid创建opentelemetry范围

    我知道我们要使用上下文传播来获取作为彼此子级创建的父级 Traceid 和 Span 但我的发布者正在使用标头 nats 不是 http 我的消息代理使用标头 我将traceid和spanid设置为出站请求中的标头 发送消息 然后订阅者应该
  • 使用 FOR XML 进行行串联,但具有多个列?

    我经常使用如下查询 SELECT FROM ThisTable OUTER APPLY SELECT SELECT SomeField AS data FROM SomeTable WHERE SomeTable ID ThisTable
  • XNA - 同时创建大量粒子

    是时候提出另一个 XNA 问题了 这次纯粹是从技术设计的角度来看 我的情况是这样的 我创建了一个基于 GPU 计算的粒子引擎 虽然远未完成 但它可以工作 我的 GPU 可以毫不费力地轻松处理 10k 个粒子 如果我可以添加更多粒子 我也不会
  • OpenCV:在 Python 中从 NumPy 转换为 IplImage

    我有一个使用 cv2 imread 加载的图像 这将返回一个 NumPy 数组 但是 我需要将其传递到需要 IplImage 格式的数据的第 3 方 API 我已经搜索了我能搜索到的所有内容 找到了从 IplImage 转换为 CvMat
  • 如果孩子不存在,则删除父记录

    我正在表变量中创建菜单和子菜单 典型的同表父子记录 对于所有顶部菜单 ParentID coll 均为空 对于他们的子菜单 ParentID 将是这些父菜单的 MenuId 取决于构建的用户日志类型 现在我要做的是 如果特定父级没有任何子级
  • Jackson,序列化引用的一个属性

    当序列化具有其他对象引用的Java对象时 我只需要序列化嵌套对象的一个 属性 通常是外键 因此序列化对象引用的 id 属性 英戈尔其他一切 例如 我有两个类需要序列化为 JSON 和 XML 为了清楚起见 删除了 JPA 注释 关系 用户
  • Highcharts - 即使没有数据,也强制显示 x 轴中的类别

    我想知道是否有一种方法可以强制 Highcharts 显示传递到其 x 轴的所有类别 而不提供填充数据以使其正常工作 例如 http jsfiddle net cbargren Sdnqu 指定了 3 个额外的 x 轴类别 foo bar
  • 修改pandas条形图的图例

    当我用熊猫制作条形图并且想更改图例中标签的名称时 我总是很烦恼 例如考虑以下代码的输出 import pandas as pd from matplotlib pyplot import df pd DataFrame A 26 B 20