Python数据分析——Matplotlib数据可视化基础(二)Python数据分析——Matplotlib数据可视化基础(二)

Python数据分析——Matplotlib数据可视化基础(二)

思维导图: 在这里插入图片描述

图形的绘制

认识要绘制的图形

在这里插入图片描述 在这里插入图片描述

基本绘图流程

在这里插入图片描述

pyplot基础图表函数

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

pyplot饼图的绘制

pie函数
    matplotlib.pyplot.pie(x, explode=None, labels=None, 
                        colors=None, autopct=None, pctdistance=0.6,
                        shadow=False, labeldistance=1.1, startangle=None,
                        radius=None, … )
  • 常用参数及说明如下表所示: 在这里插入图片描述 例:

    import matplotlib.pyplot as plt
   
  labels = 'Frogs','Hogs','Dogs','Logs'
  sizes = [15,30,45,10]
  explode = (0,0.1,0,0)
   
  plt.pie(sizes,explode=explode,labels=labels,autopct='%1.1f%%',
          shadow=False,startangle=90)
  plt.axis('equal')   #x,y方向尺寸相同
  plt.show()

在这里插入图片描述

pyplot直方图的绘制

bar函数
    matplotlib.pyplot.bar(left,height,width = 0.8,
  bottom = None,hold = None,data = None,** kwargs )
  • 常用参数及说明如下表所示: 在这里插入图片描述 例:

    import numpy as np
  import matplotlib.pyplot as plt
  plt.rcParams['font.sans-serif'] = 'SimHei'## 设置中文显示
  plt.rcParams['axes.unicode_minus'] = False
  data = np.load('国民经济核算季度数据.npz')
  name = data['columns']## 提取其中的columns数组,视为数据的标签
  values = data['values']## 提取其中的values数组,数据的存在位置
  label = ['第一产业','第二产业','第三产业']## 刻度标签
  plt.figure(figsize=(6,5))## 设置画布
  plt.bar(range(3),values[-1,3:6],width = 0.5,color='red')## 绘制散点图
  plt.xlabel('产业')## 添加横轴标签
  plt.ylabel('生产总值(亿元)')## 添加y轴名称
  plt.xticks(range(3),label)
  plt.title('2017年第一季度各产业国民生产总值直方图')## 添加图表标题
  plt.show()

在这里插入图片描述

pyplot极坐标图的绘制

例:

    import numpy as np
  import matplotlib.pyplot as plt
   
  N = 10
  theta = np.linspace(0.0,2*np.pi,N,endpoint=False)
  radii = 10 * np.random.rand(N)
  width = np.pi / 2 * np.random.rand(N)
   
  ax = plt.subplot(111,projection='polar')    
  bars = ax.bar(theta,radii,width=width,bottom=0.0) ##left,height,width
   
  for r,bar in zip(radii,bars):  
      bar.set_facecolor(plt.cm.viridis(r / 10.))
      bar.set_alpha(0.5)
   
  plt.show()

在这里插入图片描述

pyplot散点图的绘制

scatter函数
    matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, alpha=None, **kwargs)
  • 常用参数及说明如下表所示: 在这里插入图片描述 例:

    import numpy as np
  import matplotlib.pyplot as plt
  plt.rcParams['font.sans-serif'] = 'SimHei' ## 设置中文显示
  plt.rcParams['axes.unicode_minus'] = False
  data = np.load('国民经济核算季度数据.npz')
  name = data['columns'] ## 提取其中的columns数组,视为数据的标签
  values = data['values']## 提取其中的values数组,数据的存在位置
  plt.figure(figsize=(8,7))## 设置画布
  plt.scatter(values[:,0],values[:,2], marker='o')## 绘制散点图
  plt.xlabel('年份')## 添加横轴标签
  plt.ylabel('生产总值(亿元)')## 添加y轴名称
  plt.xticks(range(0,70,4),values[range(0,70,4),1],rotation=45)
  plt.title('2000-2017年季度生产总值散点图')
  plt.savefig(‘2000-2017年季度生产总值散点图.png')
  plt.show()

在这里插入图片描述

pyplot折线图的绘制

plot函数
    matplotlib.pyplot.plot(*args, **kwargs) 
  • plot函数在官方文档的语法中只要求填入不定长参数,实际可以填入的主要参数主要如下: 在这里插入图片描述

  • color参数的8种常用颜色的缩写: 在这里插入图片描述 例:

    plt.figure(figsize=(8,7))## 设置画布
    ## 绘制折线图
    plt.plot(values[:,0],values[:,2],color = 'r',linestyle = '--')
    plt.xlabel('年份')## 添加横轴标签
    plt.ylabel('生产总值(亿元)')## 添加y轴名称
    plt.xticks(range(0,70,4),values[range(0,70,4),1],rotation=45)
    plt.title('2000-2017年季度生产总值折线图')## 添加图表标题
    plt.savefig('tmp/2000-2017年季度生产总值折线图.png')
    plt.show()

在这里插入图片描述

pyplot箱线图的绘制

boxplot函数
    matplotlib.pyplot.boxplot(x, notch=None, sym=None, 
                              vert=None, whis=None, positions=None, 
                              widths=None, patch_artist=None,meanline=None, 
                              labels=None, … )
  • 常用参数及说明如下表所示: 在这里插入图片描述 例:

    import numpy as np
    import matplotlib.pyplot as plt
    plt.rcParams['font.sans-serif'] = 'SimHei'## 设置中文显示
    plt.rcParams['axes.unicode_minus'] = False
    data = np.load('国民经济核算季度数据.npz')
    name = data['columns']## 提取其中的columns数组,视为数据的标签
    values = data['values']## 提取其中的values数组,数据的存在位置
    label= ['第一产业','第二产业','第三产业']## 定义标签
    gdp = (list(values[:,3]),list(values[:,4]),list(values[:,5]))
    plt.figure(figsize=(6,4))
    plt.boxplot(gdp,notch=True,labels = label, meanline=True)
    plt.title('2000-2017各产业国民生产总值箱线图')
    plt.savefig('tmp/2000-2017各产业国民生产总值箱线图.png')
    plt.show()

在这里插入图片描述

 

posted on 2021-07-01 21:10  BabyGo000  阅读(437)  评论(0)    收藏  举报