gpt4 book ai didi

python - 如何使用 matplotlib 中设置的自定义数字来自定义条形图中的颜色?

转载 作者:行者123 更新时间:2023-12-02 02:16:47 24 4
gpt4 key购买 nike

我试图根据整数值向条形图添加颜色,假设值是 1 到 20,1 是最亮的,20 是最暗的,但是没有任何颜色可以是相同的,所以到目前为止,我使用了错误的 colorbar 方法:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.DataFrame({'values': [17, 16, 16, 15, 15, 15, 14, 13, 13, 13]})
df.plot(kind='barh')
plt.imshow(df)
plt.colorbar()
plt.show()

但它给出了一个奇怪的结果:

Weird plot result

如何修复它?

最佳答案

我刚刚意识到使用plt.barhcolormaps提供更好的绘图,使用:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame({'values': [0, 0, 0, 0, 0, 17, 16, 16, 15, 15, 15, 14, 13, 13, 13]})
df = df.sort_values(by='values').reset_index(drop=True)
s = df['values'].replace(0, df.loc[df['values'] != 0, 'values'].min())
s = s.sub(s.min())
colors = (1 - (s / s.max())).astype(str).tolist()
plt.barh(df.index, df['values'].values, color=colors)
plt.show()

这给出:

关于python - 如何使用 matplotlib 中设置的自定义数字来自定义条形图中的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58853468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com