Vin*_*eet 4 python matplotlib histogram dataframe pandas
样本数据
import pandas as pd
import matplotlib.pyplot as plt
dummy = {'id': [1,2,3,4,5],
'brand': ['MS', 'Apple', 'MS', 'Google', 'Apple'],
'quarter': ['2017Q2', '2017Q2', '2017Q2', '2016Q1', '2015Q1']}
dummyData = pd.DataFrame(dummy, columns = ['id', 'brand', 'quarter'])
dummyData
# id brand quarter
# 0 1 MS 2017Q2
# 1 2 Apple 2017Q2
# 2 3 MS 2017Q2
# 3 4 Google 2016Q1
# 4 5 Apple 2015Q1
Run Code Online (Sandbox Code Playgroud)
现在我想使用 matplotlib 和 pandas 绘制直方图,这里是描述
我有 R 背景,使用 ggplot 很容易,我想在 Python 中做同样的事情,但我没有找到任何合适的代码,我遇到了下面提到的错误
TypeError: Empty 'DataFrame': no numeric data to plot
Run Code Online (Sandbox Code Playgroud)
data_frame.attribute_name.value_counts().plot.bar()
iris_data.sample(3)

iris_data.Species.value_counts().plot.bar()

IIUC,你可以使用groupby+ count+ unstack+ plot-
plt.style.use('ggplot')
dummyData.groupby(['quarter', 'brand'])\
.brand.count().unstack().plot.bar(legend=True)
plt.show()
Run Code Online (Sandbox Code Playgroud)
作为参考,这是绘制的内容-
brand Apple Google MS
quarter
2015Q1 1.0 NaN NaN
2016Q1 NaN 1.0 NaN
2017Q2 1.0 NaN 2.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8137 次 |
| 最近记录: |