matplotlib绘图

Posted linranran

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matplotlib绘图相关的知识,希望对你有一定的参考价值。

 

plt.plot()绘制线性图

  • 绘制单条线形图
  • 绘制多条线形图
  • 设置坐标系的比例plt.figure(figsize=(a,b))
  • 设置图例legend()
  • 设置轴的标识
  • 图例保存
    • fig = plt.figure()
    • plt.plot(x,y)
    • figure.savefig()
  • 曲线的样式和风格(自学)

 

import numpy as np
import matplotlib.pyplot as plt
#魔法指令,让绘制出来的图例展示在当前文件中
%matplotlib inline 

x = np.array([1,2,3,4,5])
y = x + 2
plt.plot(x,y)

技术图片

 

 

x = x
y = x ** 5
plt.plot(x,y)

技术图片

 

 

#在一个坐标系中绘制多条曲线
plt.plot(x,y)
plt.plot(x-2,y+3)

技术图片

 

#这坐标系设置表示
plt.plot(x,y)
plt.xlabel(‘temp‘)
plt.ylabel(‘dist‘)
plt.title(‘temp&dist‘)

技术图片

 

 

#设置图例
plt.plot(x,y,label=‘aaa‘)
plt.plot(x-2,y+3,label=‘bbb‘)
plt.legend()

技术图片

 

 

 

#等比例的放大或者缩小坐标系(坐标的刻度是不会发生改变)
plt.figure(figsize=(15,10)) #一定写在绘图操作之前

plt.plot(x,y,label=‘aaa‘)
plt.plot(x-2,y+3,label=‘bbb‘)
plt.legend()

 

#保存图像
fig = plt.figure() #1.实例化对象
#2.绘图
plt.plot(x,y,label=‘aaa‘)
plt.plot(x-2,y+3,label=‘bbb‘)
plt.legend()
#3.保存图片
fig.savefig(‘./123.png‘)

技术图片

 

柱状图:plt.bar()

  • 参数:第一个参数是索引。第二个参数是数据值。第三个参数是条形的宽度
x = [1,2,3,4,5]
y = [3,8,5,7,6] #柱高
plt.bar(x,y)
技术图片

直方图

    • 是一个特殊的柱状图,又叫做密度图
    • plt.hist()的参数
      • bins
        可以是一个bin数量的整数值,也可以是表示bin的一个序列。默认值为10
      • normed
        如果值为True,直方图的值将进行归一化处理,形成概率密度,默认值为False
      • color
        指定直方图的颜色。可以是单一颜色值或颜色的序列。如果指定了多个数据集合,例如DataFrame对象,颜色序列将会设置为相同的顺序。如果未指定,将会使用一个默认的线条颜色
      • orientation
        通过设置orientation为horizontal创建水平直方图。默认值为vertical

x = [1,1,1,1,2,3,3,3,4,5,5,6,6,6,6,6,6,6,7,8,9]
plt.hist(x,bins=20) #bins表示柱子的个数        上面的array 是区间范围内数的个数  下面的array 是 以柱子个数分的区间

技术图片

 

饼图

  • pie(),饼图也只有一个参数x
  • 饼图适合展示各部分占总体的比例,条形图适合比较各部分的大小
arr=[11,22,31,15]
plt.pie(arr)
技术图片

arr=[0.2,0.3,0.1]  
plt.pie(arr)

技术图片

 

 

arr=[11,22,31,15]
plt.pie(arr,labels=[‘a‘,‘b‘,‘c‘,‘d‘])

技术图片

 

 

arr=[11,22,31,15]
plt.pie(arr,labels=[‘a‘,‘b‘,‘c‘,‘d‘],labeldistance=0.3,autopct=‘%.6f%%‘)

技术图片

 

 

arr=[11,22,31,15]
plt.pie(arr,labels=[‘a‘,‘b‘,‘c‘,‘d‘],labeldistance=0.3,shadow=True,explode=[0.2,0.3,0.2,0.4])

技术图片

 

散点图scatter()

  • 因变量随自变量而变化的大致趋势
x = np.linspace(-np.pi,np.pi,num=20)
y = np.random.randint(0,20,size=(20,))

plt.scatter(x,y)
技术图片

 

 

 

以上是关于matplotlib绘图的主要内容,如果未能解决你的问题,请参考以下文章

matplotlib绘图入门详解

为啥代码片段在 matplotlib 2.0.2 上运行良好,但在 matplotlib 2.1.0 上引发错误

python matplotlib oybn的小论文绘图代码

Matplotlib 绘图细节设置

python绘图之matplotlib

Matplotlib常用绘图示例入门