python数据分析与可视化常见的图形及其绘制

一:常见图形的分类:

二:Matplotlib的绘图函数具有以下特点:

  1. 灵活性:Matplotlib提供了丰富的选项和参数,可以对图形的各个方面进行精细调整。例如,可以设置图形的样式、颜色、线型、标签、标题等,以满足特定的需求。
  2. 多种图形类型:Matplotlib支持多种常见的图形类型,包括线条图、散点图、柱状图、饼图、箱线图、等高线图、3D图形等。
  3. 面向对象和函数式绘图方案:通常使用Matplotlib绘图有两种不同的方式:面向对象绘图和函数式绘图。面向对象绘图方案(ax.plot)结构清晰,功能齐全,容易理解。函数式绘图方案 (plt.plot)代码较简短,但容易迷失操作对象,造成混乱。
  4. 交互式图形:Matplotlib支持交互式图形,可以使用鼠标放大、缩小、移动图像,或添加注释等。
  5. 跨平台支持:Matplotlib可以在各种平台上使用,包括Windows、Mac、Linux等。
  6. 易于扩展:Matplotlib具有易于扩展的特点,可以使用Python中的各种数据结构(如列表、元组、字典等)来构建图形。此外,Matplotlib还支持自定义图形和插件,可以轻松扩展其功能。
  7. 自动缩放:Matplotlib会自动缩放图形,以适应不同的显示尺寸和分辨率。
  8. 丰富的文档和社区支持:Matplotlib拥有丰富的文档和活跃的社区支持,用户可以轻松找到所需的帮助和资源。

三:Matplotlib各图形的绘制函数: 

1.柱形图:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
#查看数据
df=pd.read_excel('...航空公司数据.xlsx',encoding='gbk')
df
#查看工作地所在省份
df1=df.groupby('工作地所在省份').size().sort_values(ascending=False)
df1
#绘制柱形图
plt.rcParams['font.family']='SimHei'
plt.figure(figsize=(12,6))
plt.xticks(rotation=45)
plt.bar(df1.index,df1.values)
plt.xlabel("省份")
plt.ylabel("人数")
plt.title("用户所在省份分布图(前30名)")
plt.show()

运行结果如图所示:

2.折线图:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
#查看数据
df=pd.read_excel('...航空公司数据.xlsx',encoding='gbk')
df
#查看入会时间
df['入会年份']=df['入会时间'].dt.year
df
#查看入会年份
df2=df.groupby('入会年份').size()
df2
#定义x,y
x=df2.index
y=df2.values
#绘制折线图
plt.rcParams['font.family']='SimHei'
plt.plot(
    x,
    y,'--'
)
plt.title("每年的入会人数折线图")
for a,b in zip(x,y):
    plt.text(a,b+20,f'{b}',ha='center')
plt.show()

运行结果如图所示:

3.散点图: 

import pandas as pd
import numpy as np
from sklearn import datasets
import matplotlib.pyplot as plt
#查看数据
df=pd.read_excel('...航空公司数据.xlsx')
df
#绘制散点图
plt.scatter(
    df['平均折扣系数'],
    df['飞行里程数'],
)
plt.show()

运行结果如图所示:

4.饼图: 

import pandas as pd
import numpy as np
from sklearn import datasets
import matplotlib.pyplot as plt
#查看数据
df=pd.read_excel('...航空公司数据.xlsx')
df
#创建当前时间对象
import datetime
now=datetime.datetime.now()
#查看飞龄
df['飞龄']=(now-df['入会时间']).dt.days//365
df
#数据分箱
df['飞龄区间']=pd.cut(
    df['飞龄'],
    bins=list(range(9,24,3))
)
df
#分组统计各个区间的频数
result=df.groupby('飞龄区间').size()
result
#绘制饼图
plt.pie(
    x=result.values,
    labels=result.index,
    autopct='%1.1f%%',
    explode=[0,0,0,0.5]
)
plt.show()

运行结果如图所示:

5.直方图和箱线图: 

import pandas as pd
import matplotlib.pyplot as plt
#查看数据
df=pd.read_excel('...航空公司数据.xlsx')
df
#绘制图形
plt.rcParams['font.family']='SimHei'
plt.figure(figsize=(12,6))
plt.subplot(2,1,1)
min=int(df['飞行次数'].min())
max=int(df['飞行次数'].max())
plt.hist(
    df['飞行次数'],
    bins=[i for i in range(min,max,5)]
)
plt.title('用户飞行次数直方图')
plt.xlabel('飞行次数')
plt.ylabel('人数')
plt.subplot(2,1,2)
plt.boxplot(
    df['飞行次数'].dropna(),
    vert=False,
    labels=['飞行次数'],
    whis=3
)
plt.show()

运行结果如图所示:

四:小结:

Matplotlib是一个广泛使用的Python绘图库,它提供了各种函数和工具来创建各种类型的图形。  

  1. plot:用于绘制二维图形的常用函数,可以绘制折线图、散点图、曲线图等各种类型的图形。
  2. bar:用于绘制条形图,包括水平条形图和垂直条形图,可以自定义条形的颜色、边缘线和填充色等。
  3. boxplot:用于绘制箱线图,可以显示数据的五数概括(最小值、下四分位数、中位数、上四分位数和最大值),并支持自定义箱线图的样式和颜色等。
  4. scatter:用于绘制散点图,可以显示多个数据点的分布情况,支持自定义点的颜色、大小和形状等。
  5. pie:用于绘制饼图,可以显示各个部分在整体中所占的比例,支持自定义饼图的颜色、标签和起始角度等。

这些函数只是Matplotlib中可用的绘图函数的一部分,但它们应该能够满足大多数常见的绘图需求。每个函数都有许多可定制的选项,因此可以方便大家根据自己的需求来调整图形的外观和样式。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值