python 数据分析 Matplotlib常用图表(中)

简介: python 数据分析 Matplotlib常用图表

散点图/气泡图

散点图作用:

  • 单组数据,可以查看数据分布(不常用,最好使用直方图实现)
  • 多组数据,可以插件各数据之间是否存在相关性

坐标系中,每个值用一个点(x轴,y轴确定)表示

# 数据

x = [1,3,5,7,9,11,13,15,17]
y = [2,-5,19,3,5,8,12,6,1]
plt.scatter(x, y)


<matplotlib.collections.PathCollection at 0xbe16e10>

plt.scatter(
 [1,3,5,7,9,11,13,15,17],
 [2,-5,19,3,5,8,12,6,1],
 color='r',
 marker='o',
 linewidth=1,
 alpha=0.5,
# 点大小
# s=1000,
s=[50, 100, 150, 200, 250, 300, 350, 400, 450],
)
# 第二组散点图
plt.scatter(
[10, 12, 16, 18],
[5, 10, 12, 15],
)


<matplotlib.collections.PathCollection at 0xbc2e390>

案例:数据分析居民年龄/收入和超市销售额的对应关系

1. 背景介绍

数据:

  • 顾客年龄
  • 顾客年收入
  • 顾客年购物金额

需求

  • 分析出超市销售额和居民年龄、收入的关系
  • 解释关系产生的原因
  • 提出建议方案

数据

年龄 收入 销售额
 34 350 123
 40 450 114
 37 169 135
 30 189 139
 44 183 117
 36 80 121
 32 166 133
 26 120 140
 32 75 133
 36 40 133


# 年龄
age = [34,40,37,30,44,36,32,26,32,36]
# 收入
income = [350,450,169,189,183,80,166,120,75,40]
# 销售额
sales = [123,114,135,139,117,121,133,140,133,133]

2. 指标计算步骤,略

3. 数据可视化

用户年龄和销售额的关系

plt.scatter(age, sales)


<matplotlib.collections.PathCollection at 0xbccd630>

用户收入和销售额的关系

plt.scatter(income, sales)


<matplotlib.collections.PathCollection at 0xbd22e80>

将三个维度数据画入一个图表

plt.scatter(
age,
sales,
s=income,
alpha=0.5,
)


<matplotlib.collections.PathCollection at 0xbdceeb8>

4. 结论:

  • 随着用户年龄的增加,销售额逐渐降低
  • 随着用户收入的增加,销售额也在降低

原因:

  • 老年人的消费水平不高,只买便宜商品
  • 高收入用户群体较少在本超市消费
  • 本超市的主流用户群体,是发展中的年轻人,销售商品偏年轻化、平民化。

意见建议:

针对超市宣传推广营销活动的建议:

  • 营销针对特定用户群体
  • 年龄25-37岁之间
  • 年收入20万元以下
  • 应针对上述发展中的年轻人进行宣传推广活动

 

条形图/柱状图

  • 条形图(横向)
  • 柱状图(纵向)

条形图和柱状图用来比较各独立类别下的单独数据的大小比较

x = [1,2,3,4,5]
y = [3,6,1,8,2]


<BarContainer object of 5 artists>

plt.bar(
 x,
 y,
 width=0.3, # 柱子粗细
 color='r',
 alpha=0.3,
 )
# 坐标值和坐标标注 自定义
# plt.xticks([1,3,5,6,7])
plt.xticks([1,2,3,4,5], ['a', 'b', 'c', 'd', 'e'])
plt.yticks([3,6,1,8,2], ['A', 'B', 'C', 'D', 'E'])
plt.show() # 直接显示图像,其他编辑器绘图最后必须写这行代码否则没有图

plt.bar(
 x,
 y,
 width=0.3, # 柱子粗细
 color='r',
 alpha=0.3,
 )
# 坐标值和坐标标注 自定义
# plt.xticks([1,3,5,6,7])
plt.xticks([1,2,3,4,5], ['a', 'b', 'c', 'd', 'e'],rotation = 90)#rotation旋转
plt.yticks([3,6,1,8,2], ['A', 'B', 'C', 'D', 'E'])
plt.show() # 直接显示图像,其他编辑器绘图最后必须写这行代码否则没有图

image.png

条形图

  • 条形图粗细属性:height
  • 条形图的x、y坐标翻转
plt.barh(x, y, height=0.5)

案例:某班级男生和女生各科成绩平均分数据可视化

学科 男生 女生
语文 85.5 94
数学 91 82
英语 72 89.5
物理 59 62
化学 66 49
# 男生平均分,语文/数学/英语/物理/化学
 boy = [85.5,91,72,59,66]
 # 女生平均分
 girl = [94,82,89.5,62,49]
 # 男生成绩
 # x轴,各个学科
course = [1,2,3,4,5]
plt.bar(
course,
boy,
width=0.3,
color='g',
alpha=0.3,
)
# 女生成绩
course2 = [1.3, 2.3, 3.3, 4.3, 5.3]
plt.bar(
course2,
girl,
width=0.3,
color='r',
alpha=0.3,
)
# 坐标轴和坐标轴标注
plt.xticks([1.15, 2.15, 3.15, 4.15, 5.15], ['Chi','Math','Eng','Phy','Che'])
# 了解,将数据标注在柱子上
# plt.text(3, 50, 'abcde')
for i,j in zip(course,boy):
plt.text(
i, # x轴,course学科位置
j, # y轴,boy分数
'%.1f' % j, # 数据转为一位小数
ha='center', # 水平对齐
va='bottom', # 垂直对齐
alpha = 0.5,
)
for i,j in zip(course2,girl):
plt.text(
i,
j,
'%.1f' % j,
ha='center',
va='bottom',
alpha = 0.5,
)
plt.grid(linewidth=0.1)
plt.show()
相关文章
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
3月前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
198 4
数据分析的 10 个最佳 Python 库
|
2月前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
105 8
|
3月前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
146 5
|
3月前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
3月前
|
数据采集 存储 数据可视化
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
|
3月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析和可视化
【10月更文挑战第42天】本文将介绍如何使用Python进行数据分析和可视化。我们将从数据导入、清洗、探索性分析、建模预测,以及结果的可视化展示等方面展开讲解。通过这篇文章,你将了解到Python在数据处理和分析中的强大功能,以及如何利用这些工具来提升你的工作效率。
|
3月前
|
数据采集 数据可视化 数据挖掘
掌握Python数据分析,解锁数据驱动的决策能力
掌握Python数据分析,解锁数据驱动的决策能力
|
5月前
|
Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
|
5月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
93 1

热门文章

最新文章

推荐镜像

更多