如何使用python为下表创建条形图。我创建了一个轴,然后在excel中绘图。(附带所需输出)
我有一个简单的数据框,我需要为它创建一个条形图。假设集群3有5家餐厅,那么图中应该显示相同的情况。请看附件中的图片。我已经提供了所需的输出我已经稍微修改了您的数据。 首先转换数据并以不同的方式表示如何使用python为下表创建条形图。我创建了一个轴,然后在excel中绘图。(附带所需输出),python,dataframe,bar-chart,cluster-computing,Python,Dataframe,Bar Chart,Cluster Computing,我有一个简单的数据框,我需要为它创建一个条形图。假设集群3有5家餐厅,那么图中应该显示相同的情况。请看附件中的图片。我已经提供了所需的输出我已经稍微修改了您的数据。 首先转换数据并以不同的方式表示 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn dct = {'clusters':[3,3,3,0,5,3,3,2,1,3,1,4,1], 'venue':['I','I',
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn
dct = {'clusters':[3,3,3,0,5,3,3,2,1,3,1,4,1],
'venue':['I','I','H','M','I','F','C','A','H','I','D','H','H']}
df = pd.DataFrame(dct)
print(df)
mod = []
#modifying data
for x in np.unique(df.clusters):
for y in np.unique(df.venue):
tmp = {}
temp = df[df.clusters==x]
k = len(temp[temp.venue==y])
if k>0:
tmp['cluster'] = x
tmp['venue'] = y
tmp['value'] = k
mod.append(tmp)
mod = pd.DataFrame(mod)
print(mod)
#plotting figure using seaborn barplot, where hue is your venue.
fig, ax1 = plt.subplots(figsize=(10, 10))
seaborn.barplot(x='cluster', y='value', hue='venue', data=mod, ax=ax1)
seaborn.despine(fig)
plt.xlabel('Clusters')
plt.ylabel('Values')
plt.show()
输出:
clusters venue
0 3 I
1 3 I
2 3 H
3 0 M
4 5 I
5 3 F
6 3 C
7 2 A
8 1 H
9 3 I
10 1 D
11 4 H
12 1 H
modified data
cluster venue value
0 0 M 1
1 1 D 1
2 1 H 2
3 2 A 1
4 3 C 1
5 3 F 1
6 3 H 1
7 3 I 3
8 4 H 1
9 5 I 1
图表如下所示:非常感谢。虽然我没有完全使用你的代码,但看到你的代码让我想起了“色调”功能。因此,我直接使用以下代码给出了最终结果:ax=sns.countplotx=Cluster Labels,hue=first-Most-Common-vention,data=clus