Python数据可视化:用户属性分析图表绘制
要对以上数据进行可视化,可以使用Python中的matplotlib库进行绘图。以下是使用matplotlib绘制柱状图的代码示例:
import matplotlib.pyplot as plt
# 性别分布数据
gender = ['女', '男', '未知']
gender_count = [3305, 2104, 5]
gender_percentage = [61.05, 38.86, 0.09]
# 创建性别分布柱状图
fig, ax = plt.subplots()
ax.bar(gender, gender_count)
# 添加性别分布占比标签
for i in range(len(gender)):
ax.annotate(f'{gender_percentage[i]}%', xy=(gender[i], gender_count[i]), ha='center', va='bottom')
# 设置x轴标签和标题
ax.set_xlabel('性别')
ax.set_ylabel('用户数')
ax.set_title('性别分布')
# 显示图形
plt.show()
# 地域归属数据
region = ['云南省', '四川省', '贵州省', '广东省', '江西省', '河北省', '重庆', '湖南省', '山东省', '浙江省', '新疆', '山西省', '北京', '福建省', '吉林省', '上海', '江苏省', '广西', '陕西省', '河南省', '天津', '湖北省', '内蒙古', '海南省', '香港', '辽宁省', '安徽省', '甘肃省']
region_count = [3664, 271, 203, 171, 127, 98, 84, 72, 69, 68, 60, 56, 34, 24, 22, 21, 21, 15, 14, 13, 10, 8, 7, 6, 3, 3, 3]
# 创建地域归属柱状图
fig, ax = plt.subplots(figsize=(10, 6))
ax.bar(region, region_count)
# 设置x轴标签和标题
ax.set_xlabel('地域归属')
ax.set_ylabel('用户数')
ax.set_title('地域归属分布')
# 旋转x轴标签
plt.xticks(rotation=90)
# 显示图形
plt.show()
# 年龄分布数据
age = ['18岁以下', '18岁到25岁', '26岁到35岁', '36岁到45岁', '46岁到60岁', '60岁以上', '未知']
age_count = [15, 3792, 573, 347, 605, 34, 48]
age_percentage = [0.28, 70.04, 10.58, 6.41, 11.17, 0.63, 0.89]
# 创建年龄分布柱状图
fig, ax = plt.subplots()
ax.bar(age, age_count)
# 添加年龄分布占比标签
for i in range(len(age)):
ax.annotate(f'{age_percentage[i]}%', xy=(age[i], age_count[i]), ha='center', va='bottom')
# 设置x轴标签和标题
ax.set_xlabel('年龄')
ax.set_ylabel('用户数')
ax.set_title('年龄分布')
# 显示图形
plt.show()
# 语言分布数据
language = ['简体中文', '未知', '英文']
language_count = [5317, 48, 27]
language_percentage = [98.21, 0.89, 0.50]
# 创建语言分布柱状图
fig, ax = plt.subplots()
ax.bar(language, language_count)
# 添加语言分布占比标签
for i in range(len(language)):
ax.annotate(f'{language_percentage[i]}%', xy=(language[i], language_count[i]), ha='center', va='bottom')
# 设置x轴标签和标题
ax.set_xlabel('语言')
ax.set_ylabel('用户数')
ax.set_title('语言分布')
# 显示图形
plt.show()
以上代码分别绘制了性别分布、地域归属、年龄分布和语言分布的柱状图。可以根据实际需求进行修改和优化。
原文地址: https://www.cveoy.top/t/topic/o1Ck 著作权归作者所有。请勿转载和采集!