【问题标题】:Plotting a bar chart绘制条形图
【发布时间】:2020-06-23 11:36:40
【问题描述】:

我在 python 中有一个导入的 excel 文件,并想创建一个条形图。 在条形图中,我希望条形按利润分隔,0-1010-2020-30... 我该怎么做呢?

这是我尝试过的事情之一:

import NumPy as np
import matplotlib.pyplot as plt
%matplotlib inline  
df.plot(kind="bar",x="profit", y="people")
df[df.profit<=10]
plt.show()

和:

df[df.profit range (10,20)]

【问题讨论】:

标签: python pandas charts bar-chart


【解决方案1】:

如果没有数据样本,很难更好地帮助您,但我随机构建了一个数据集,该数据集应该具有您的形状,因此希望此解决方案对您有用:

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

# For random data
import random
%matplotlib inline

df = pd.DataFrame({'profit':[random.choice([i for i in range(100)]) for x in range(100)], 'people':[random.choice([i for i in range(100)]) for x in range(100)]})
display(df)

out = pd.cut(df['profit'], bins=[x*10 for x in range(10)], include_lowest=True)
ax = out.value_counts(sort=False).plot.bar(rot=0, color="b", figsize=(14,4))
plt.xlabel("Profit")
plt.ylabel("People")
plt.show()

我在这里查看了另一个问题 (Pandas bar plot with binned range),他们在那里解释了如何解决这个问题。

希望对你有帮助:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-17
    • 2014-08-22
    • 2020-07-22
    • 2021-12-27
    • 2015-10-09
    相关资源
    最近更新 更多