Python 20190212读入csv绘制分类直方图

comany_type = { } #colm1第一列
know_typeq1 = {’} # colm2 第二列
excute_typeq2 = {’} #colm3第三列
chara_knowsq3 = {’} #colm4-10列

#数据按照行进行存储
file =open(‘suzhou.csv’,‘r’)
lines=file.readlines()
file.close()
row=[]
for line in lines:
row.append(line.split(’,’))
#print(‘第2行:’,row[1])#打印行数组

#数据按照列进行存储
colm = pd.read_csv(‘suzhou.csv’)
colm01zx = colm[colm[‘colm1’]==1]
colm02sj = colm[colm[‘colm1’]==2]
colm03jl = colm[colm[‘colm1’]==3]
colm04yz = colm[colm[‘colm1’]==4]
colm05gl = colm[colm[‘colm1’]==5]

comany_type_counts = colm[‘colm1’].value_counts()
know_typeq1_counts = colm[‘colm2’].value_counts()
excute_typeq2_counts = colm[‘colm3’].value_counts()

def autolabel(rects):
for rect in rects:
height = rect.get_height()
plt.text(rect.get_x()+rect.get_width()/2., 1.01*height, ‘%s’ % int(height))

plt.figure(figsize=(7,7))
x=chara_knowsq3.keys()
y=(colm[‘colm4’].count(),colm[‘colm5’].count(),
colm[‘colm6’].count(),colm[‘colm7’].count(),
colm[‘colm8’].count(),colm[‘colm9’].count(),
colm[ ‘colm10’ ].count ())
rects= plt.bar(x,y)
autolabel(rects)
plt.xticks((1,2,3,4,5,6,7),chara_knowsq3.values())
plt.title(‘调xxxxxx认知情况’)
plt.savefig(‘图6 xxxxxxxxxxx特点认知情况.png’)

#图7 不同类别调研样本企业对 全过程咨询的特点认知 第4-10列
fig7 = plt.figure(figsize=(7,7))
x=chara_knowsq3.keys()
y1=(colm01zx[‘colm4’].count(),colm01zx[‘colm5’].count(),
colm01zx[‘colm6’].count(),colm01zx[‘colm7’].count(),
colm01zx[‘colm8’].count(),colm01zx[‘colm9’].count(),
colm01zx[‘colm10’].count())
y2= (colm02sj[‘colm4’].count(),colm02sj[‘colm5’].count(),
colm02sj[‘colm6’].count(),colm02sj[‘colm7’].count(),
colm02sj[‘colm8’].count(),colm02sj[‘colm9’].count(),
colm02sj[‘colm10’].count())
y3= (colm03jl[‘colm4’].count(),colm03jl[‘colm5’].count(),
colm03jl[‘colm6’].count(),colm03jl[‘colm7’].count(),
colm03jl[‘colm8’].count(),colm03jl[‘colm9’].count(),
colm03jl[‘colm10’].count())
y4= (colm04yz[‘colm4’].count(),colm04yz[‘colm5’].count(),
colm04yz[‘colm6’].count(),colm04yz[‘colm7’].count(),
colm04yz[‘colm8’].count(),colm04yz[‘colm9’].count(),
colm04yz[‘colm10’].count())
y5= (colm05gl[‘colm4’].count(),colm05gl[‘colm5’].count(),
colm05gl[‘colm6’].count(),colm05gl[‘colm7’].count(),
colm05gl[‘colm8’].count(),colm05gl[‘colm9’].count(),
colm05gl[‘colm10’].count())

plt.plot(x,y1,linewidth=3,marker=‘o’,markersize=15,label=str(comany_type[1]))
plt.plot(x,y2,linewidth=3,marker=’^’,markersize=10,label=str(comany_type[2]))
plt.plot(x,y3,linewidth=3,marker=‘o’,markersize=10,label=str(comany_type[3]))
plt.plot(x,y4,linewidth=3,marker=’’,markersize=15,label=str(comany_type[4]))
plt.plot(x,y5,linewidth=3,marker=’
’,markersize=15,label=str(comany_type[5]))

plt.title(‘不同类别调研样本企业对全过程咨询的特点认知比较’)
plt.xticks((1,2,3,4,5,6,7),chara_knowsq3.values())
plt.legend()

for a,b in enumerate(y1): #在咨询公司曲线上标注坐标点
plt.text(a+1,b+0.2,str(b),fontsize=16,ha=‘center’, va=‘bottom’)
for a,b in enumerate(y2): #在设计企业 曲线上标注坐标点
plt.text(a+1,b+0.2,str(b),fontsize=16,ha=‘center’, va=‘bottom’)
for a,b in enumerate(y3): #在监理公司曲线上标注坐标点
plt.text(a+0.8,b+0.2,str(b),fontsize=16,ha=‘center’, va=‘bottom’)
for a,b in enumerate(y4): #在建设单位曲线上标注坐标点
plt.text(a+1,b-3,str(b),fontsize=16,ha=‘center’, va=‘bottom’)
for a,b in enumerate(y5): #在项目管理企业曲线上标注坐标点
plt.text(a+1,b+0.2,str(b),fontsize=16,ha=‘center’, va=‘bottom’)

plt.savefig(‘图7 不同类别调研样本企业对全过程咨询的特点认知比较.png’)
plt.show()Python 20190212读入csv绘制分类直方图Python 20190212读入csv绘制分类直方图