我使用以下代码绘制条形图:

import matplotlib.pyplot as pls 
my_df.plot(x='my_timestampe', y='col_A', kind='bar') 
plt.show()

情节很好.然而,我想通过在绘图上有三列来改进图表:"col_A"、"col_B"和"col_C".如下图所示:

enter image description here

我希望col_A在x轴上方以蓝色显示,col_B在x轴下方以红色显示,col_C在x轴上方以绿色显示.这在matplotlib中是可能的吗?如何更改以绘制所有三列?谢谢

推荐答案

通过向ploty参数提供列名列表,可以一次绘制多个列.

df.plot(x="X", y=["A", "B", "C"], kind="bar")

enter image description here

这将生成一个图形,其中条形图彼此相邻.

为了使它们重叠,需要多次调用plot,并将要绘制的轴作为参数ax提供给绘图.

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

y = np.random.rand(10,4)
y[:,0]= np.arange(10)
df = pd.DataFrame(y, columns=["X", "A", "B", "C"])

ax = df.plot(x="X", y="A", kind="bar")
df.plot(x="X", y="B", kind="bar", ax=ax, color="C2")
df.plot(x="X", y="C", kind="bar", ax=ax, color="C3")

plt.show()

enter image description here

Python-3.x相关问答推荐

Python将类实例变量转换为嵌套 struct

按小时和日期对Pandas 数据帧进行分组

SQL Server 2022和Python3.10脚本错误

在Pandas中,根据另一列中的重复值将数据分组为一列

python 分代垃圾收集:get_count 没有报告正确的对象创建数?

如何确保 GCP Document AI 模型输出与输入文件同名的 JSON?

将 rgb numpy 图像转换为 rgb 列表和相应的索引值

使用 Python 在特定组的列中设置上限

使用 multiprocessing 处理图像

pytorch 中 mps 设备的 manual_seed

Pandas 在每组两个条件之间获得时间增量

根据另一个数据帧中的位置从主数据帧中提取子序列

如何使用 django rest 框架在 self forienkey 中删除多达 n 种类型的数据?

如果值超出上下限(异常值处理),则将值的数据框替换为 np.nan

Semaphore信号量 Python 的工作原理

如何从脚本中提取 PDF 文档的标题以进行重命名?

Django 2 个字段之一不能为空

计数大于Pandas groupby 中的值的项目

python判断一个方法是否被调用而不模拟它

将字符串拆分为最大长度 X 的片段 - 仅在空格处拆分