python数据可视化(⼆)读取csv数据绘制条形图之前介绍了如何读取csv数据绘制饼状图
这次接着介绍如何读取数据绘制条形图
读取csv中的年龄并绘制成区间图
import csv
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
def age_Dis():#统计年龄分布
pr = pd.read_csv("hydata_swjl_0.csv")
pr1 = pd.read_csv("hydata_swjl_1.csv", low_memory=False)
print("统计年龄分布:")
print()
age = []
for i in pr['BIRTHDAY']:
age.append(int((20181219 - i) / 10000))
print(age)
age1=[]
age2=[]
age3=[]
age4=[]
age5=[]
for i in age:
if 18<=i<25:
age1.append(i)
elif 25<=i<35:
age2.append(i)
elif 35<=i<45:
age3.append(i)
elif 45<=i<55:
age4.append(i)
else:
age5.append(i)
index=['18~25','25~35','35~45','45~55','others']
values=[len(age1),len(age2),len(age3),len(age4),len(age5)]
plt.bar(index,values)
plt.show()
if __name__=="__main__":
age_Dis()
展⽰结果:
注:
问:为什么要⽤条形图??
python怎么读csv数据
答:数据太多(⼀百万多条),如果⽤其他图就不能很好的显⽰出来⽐如说,使⽤折线图:
如图:就完全看不出年龄的分布情况
代码如下:
# 绘制成折线图'''
'''
plt.axis([0, 1100000, 0, 75])
plt.xlabel('People Number',color='red')
plt.ylabel('Peoples Name',color='red')
plt.title('Age Distribution',fontsize=15)
plt.plot(age)
plt.show()
print("折线图效果太差,因采⽤柱形图")
'''
因⽽,在数据过⼤的情况下,最好采⽤条形图

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。