3Matplotlib------常见图形绘制(折线图、散点图、柱状图、直方图、饼图)


本节代码在👆 👆👆下载或者在评论区留下邮箱,发送给你

3.3 常见图形绘制

学习目标

目标

  • 掌握常见统计图及其意义

      Matplotlib能够绘制折线图、散点图、柱状图、直方图、饼图。
      我们需要知道不同的统计图的意义,以此来决定选择哪种统计图来呈现我们的数据。

3.3.1常见图形种类及意义

折线图:

  • 以折线的上升或下降来表示统计数量的增减变化的统计图
    特点:能够显示数据的变化趋势,反映事物的变化情况。(变化)
    api:plt.plot(x,y)
    在这里插入图片描述

散点图:

  • 用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式。
    特点:判断变量之间是否存在数量关联趋势,展示离群点(分布规律)
    api:plt.scatter(x,y)
    在这里插入图片描述

柱状图:

  • 排列在工作表的列或行中的数据可以绘制到柱状图中。
    特点:绘制连离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别。(统计/对比)
    api:pI.bfr(x,width,align=‘center’,**kwargs)

     Parameters:
     x:需要传递的数据
     width:柱状图的宽度
     align:每个柱状图的位置对齐方式
     {'center','edge'},optional,default:'center'
     **kwargs:
     color:选择柱状图的颜色
    

在这里插入图片描述

直方图:


  由一系列高度不等的纵向条纹或线段表示数据分布的情况。一般用横轴表示数据范围,纵轴表示分布情况。
特点:绘制连续性的数据展示一组或者多组数据的分布状况(统计)
api:matplotlib.pyplot.hist(x,bins=None)

	Parameters:
	x:需要传递的数据
	bins:组距

在这里插入图片描述

饼图:


  用于表示不同分类的占比情况,通过弧度大小来对比各种分类。
特点:分类数据的占比情况(占比)
api:plt.pie(x,labels=,autopct=,colors)

Parameters:
x:数量,自动算百分比
labe1s:每部分名称
autopct:占比显示指定%1.2f%%
colors:每部分颜色

在这里插入图片描述

3.3.2散点图绘制

需求:探究房屋面积和房屋价格的关系
房屋面积数据:

x=[225.98,247.07,253.14,457.85,241.58,301.01,20.67,288.64,
163.56,120.06,207.83,342.75,147.9,53.06,224.72,29.51,
21.61,483.21,245.25,399.25,343.35]

房屋价格数据:

y=[196.63,203.88,210.75,372.74,202.41,247.61,24.9,239.34,
140.32,104.15,176.84,288.23,128.79,49.64,191.74,33.1,
30.74,400.02,205.35,330.64,283.45]

在这里插入图片描述
代码:

import matplotlib.pyplot as plt
#准备数据
x=[225.98,247.07,253.14,457.85,241.58,301.01,20.67,288.64,
163.56,120.06,207.83,342.75,147.9,53.06,224.72,29.51,
21.61,483.21,245.25,399.25,343.35]

y=[196.63,203.88,210.75,372.74,202.41,247.61,24.9,239.34,
140.32,104.15,176.84,288.23,128.79,49.64,191.74,33.1,
30.74,400.02,205.35,330.64,283.45]

#1.创建画布
plt.figure(figsize=(20,8),dpi=100)

#2.绘制散点图
plt.scatter(x,y)

#3.显示图像
plt.show()

3.3.3 柱状图绘制

需求-对比每部电影的票房收入
在这里插入图片描述
电影数据如下:
在这里插入图片描述

  • 准备数据

     ['雷神3','诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','狂暴']
     [73853,57767,22354,15969,14839,8725,8716,8318,7916,6764,52222]
    
  • 绘制柱状图
    代码:

import matplotlib.pyplot as plt
from pylab import mpl
#设置显示中文字体
mpl.rcParams["font.sans-serif"]=["SimHei"]
#设置正常显示符号
mpl.rcParams["axes.unicode_minus"]=False

#0.准备数据
#电影名字
movie_name=['雷神3','诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','狂暴']

#横坐标
x=range(len(movie_name))

#票房数据
y=[73853,57767,22354,15969,14839,8725,8716,3318,7916,6764,52222]

#1.创建画布
plt.figure(figsize=(20,8),dpi=100)

#2.绘制柱状图
plt.bar(x,y,width=0.5,color=['b','r','g','y','c','m','y','k','c','g','b'])

#2.1修改x轴的刻度显示
plt.xticks(x,movie_name)

#2.2添加网格显示
plt.grid(linestyle="--",alpha=0.5)

#2.3添加标题
plt.title("电影票房收入对比")

#3 显示图像
plt.show()

3.3.4 饼状图绘制

在这里插入图片描述

#准备数据
movie_name = ['雷神3:诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','狂兽','其它']
place_count = [60605,54546,45819,28243,13270,9945,7679,6799,6101,4621,20105]
explode = (0.1, 0, 0.1, 0, 0, 0, 0, 0, 0, 0, 0)

# 绘制图像
plt.figure(figsize=(20, 8), dpi=100)
plt.pie(place_count, labels=movie_name,explode=explode,autopct="%1.2f%%",colors=['b','r','g','y','c','m','y','c','g','y'])
# 显示图例
plt.legend()
# 添加标题
plt.title("电影排片占比")
# 规定为正圆
plt.axis('equal')

# 显示图像
plt.show()

参考链接:
https://matplotlib.org/index.html

3.3.5 小结

  • 折线图【知道】
    - 能够显示数据的变化趋势,反映事物的变化情况。(变化)
    - plIt.plot()
    - 散点图【知道】
    - 判断变量之间是否存在数量关联趋势,展示离点(分布规律)
    - plt.scatter()
  • 柱状图【知道】
    - 绘制连离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别。(统计/对比)
    - plt.bar(x,width,align=“center”)
  • 直方图【知道】
    - 绘制连续性的数据展示一组或者多组数据的分布状况(统计)
    - plt.hist(x,bins)
  • 饼图【知道】
    - 用于表示不同分类的占比情况,通过弧度大小来对比各种分类
    - plt.pie(x,labels,autopct,colors)
    点个赞吧!!!你的鼓励是对我码字的认可😀😀😀
    👇👇👇
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值