简体   繁体   English

Python matplotlib 条形图颜色

[英]Python matplotlib bar graph color

I'm trying to display some data in bar graph using xticks.我正在尝试使用 xticks 在条形图中显示一些数据。 The code below displays my bars in different colors.下面的代码在不同的 colors 中显示了我的条形图。 My question is how do I make the whole graph in one color?我的问题是如何用一种颜色制作整个图表? Thanks in advance.提前致谢。

import matplotlib.pyplot as plt

data = (5)
data_2 = (6)

plt.bar(1, data)
plt.bar(2, data_2)

plt.xticks([1,2], ('Hello', 'World'))

plt.show()

Here is how:方法如下:

import matplotlib.pyplot as plt

data = (5)
data_2 = (6)

plt.bar([1,2], [data,data_2])

plt.xticks([1,2], ('Tom', 'Dick'))

plt.show()

Or add color keyword argument:或添加color关键字参数:

import matplotlib.pyplot as plt

data = (5)
data_2 = (6)
color = 'red'
plt.bar(1, data, color=color)
plt.bar(2, data_2, color=color)

plt.xticks([1,2], ('Tom', 'Dick'))

plt.show()

Output: Output:

在此处输入图像描述

I think that there is an easier way to obtain the same color for all bars.我认为有一种更简单的方法可以为所有条形获得相同的颜色。

import matplotlib.pyplot as plt

x = [1,2]
x_ticks = ['Tom', 'Dick']
y = [5,6]
plt.bar(x, y)
plt.xticks(x, x_ticks);

In case you want to use pandas如果您想使用pandas

import pandas as pd

df = pd.DataFrame({'x': [1,2],
                   'y': [5, 6],
                   'name': ['Tom', 'Dick']})

ax = df.plot(x='x', y='y', kind='bar')
ax.set_xticks(df.index)
ax.set_xticklabels(df["name"], rotation=0);

or even easier甚至更容易

df.plot(x='name', y='y', kind='bar', rot=0);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM