我有这样一个Pandas 数据框:

Favorite B | Q1
________________
McDonalds  | 5
BurgerKing | 6
KFC        | 3
Brand4     | 2

我正在绘制柱状图:

x=pd.Series(df["Q1"])
result = plt.hist(x, bins=7, color='c', edgecolor='k', alpha=0.65)
plt.axvline(x.mean(), color='k', linestyle='dashed', linewidth=1)

min_ylim, max_ylim = plt.ylim()
plt.text(x.mean()*1.1, max_ylim*0.9, 'Mean: {:.2f}'.format(x.mean()))
plt.title(str(i))

我希望每个箱子都有不同的 colored颜色 .

推荐答案

这应该有效(基于this example):

import numpy as np
import matplotlib.pyplot as plt

# Fixing random state for reproducibility
np.random.seed(0)

mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)

colors = ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf']

n, bins, patches = plt.hist(x, bins=len(colors))

# adapt the color of each patch
for c, p in zip(colors, patches):
    p.set_facecolor(c)

plt.show()

histogram with differently colored bars

Python-3.x相关问答推荐

Python网页抓取:代码输出:汤未定义

math. gcd背后的算法是什么,为什么它是更快的欧几里得算法?

这是重命名极地df列的最好方式吗?

为什么在Python中使用RANDINT函数时会出现此TypeError?

将字符串转换为python日期时间时出错

按长度和字母数字对Pandas 数据帧列进行排序

按一列分组,如果日期列相同,则在数字列中填写缺少的值

为什么我在BLE中的广告代码在发送包裹之间需要大约1秒

基于另一个数据帧计算总和

PyQt5 中耦合滑块和拨号小部件.解决结果不一致的问题

基于其他列的条件向Panda数据框中添加值到新列

生成具有偶数个 0 和 1 的给定长度的所有二进制数

使用 NaN 计算 pct_change 时如何避免 bfill 或 ffill

以不规则频率识别数据框日期时间列上缺失的日期,并用关联值填充它们

裁剪复数以解决 exp 中的溢出错误

如何从形状汇总图中提取实际值

如何从字典中打印特定键值?

为什么Pandas会在 NaN 上合并?

Tkinter AttributeError:对象没有属性'tk'

为什么 TensorFlow 的 `tf.data` 包会减慢我的代码速度?