快速上手Matplotlib常用API,


Matplotlib是一个Python 2D绘图库,它以多种硬拷贝格式和跨平台的交互式环境生成出版物质量的图形。它可以生成图表、直方图、功率谱、条形图、误差图、散点图等。本文重点介绍线形图相关api的使用方法!

生成常用图型的API

线形图

方法plot

快速上手Matplotlib常用API

散点图

方法scatter()

快速上手Matplotlib常用API

饼图

方法pie()

快速上手Matplotlib常用API

条形图

方法bar()

快速上手Matplotlib常用API

更多图形展示请参考官网:

http://www.matplotlib.org.cn/tutorials/introductory/sample_plots.html#line-plot

线性plot api详解

基础api

  1. 实例代码 
  2. from matplotlib import pyplot as plt 
  3. y = [0.21, 0.01, 0.0, 0.9]#纵轴坐标数据 
  4. x = [1, 2,3,4] #横轴坐标数据,如果不写,默认数据就是自增1 
  5. plt.title("cpu Test")#图片标题 
  6. plt.xlabel("time(s)") #横轴文字 
  7. plt.ylabel("cpu(%)")#纵轴文字 
  8. plt.yscale('linear') #设置线性轴,包括: linear、log、symlog、logit  
  9. plt.plot(y,color="blue",linewidth=2,marker="o",markersize=5,markerfacecolor="yellow",markeredgewidth=1,markeredgecolor="red") 
  10. plt.show() #图片展示 
  11. plt.savefig('d:\\testblueline.jpg') #保存图片到d盘 

生成图形展示如下:

快速上手Matplotlib常用API

plt.plot参数解释如下

  1. y是纵轴数据 
  2.  
  3. color="blue" 线条显示蓝色 
  4.  
  5. linewidth=2 线条宽度是2 
  6.  
  7. marker="o" 节点图形是O 
  8.  
  9. markersize=5 节点大小是5 
  10.  
  11. markerfacecolor="yellow" 节点颜色是黄色 
  12.  
  13. markeredgewidth=1 节点边缘线条宽度是1 
  14.  
  15. markeredgecolor="red" 节点边缘线条颜色是红色 
  16.  
  17. plt.show() 图片展示 
  18.  
  19. plt.savefig('d:\\testblueline.jpg') 保存图片到d盘 

同一张图显示多组数据并设置节点形状

  1. 实例代码 
  2. from matplotlib import pyplot as plt 
  3. import numpy as np 
  4. # 数据范围是0-5,间隔是0.5 
  5. t = np.arange(0, 5,0.5) 
  6. # 红色 --, 蓝色方块  绿色三角 
  7. plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^') 
  8. plt.show() 

生成图形展示如下:

快速上手Matplotlib常用API

设置坐标轴取值范围

  1. 实例代码 
  2. from matplotlib import pyplot as plt 
  3. y=[1,2,3,4,5,6,7,8,9] 
  4. plt.plot(y) 
  5. plt.ylabel('test data') 
  6. plt.ylim(1,5) 设置y轴显示的数据范围是1-5,方法xlim设置x轴显示范围 
  7. plt.show() 
快速上手Matplotlib常用API

设置坐标轴显示刻度

  1. 实例代码 
  2. import numpy as np 
  3. from matplotlib import pyplot as plt 
  4. y=[1,2,3,4,5,6,7,8,9] 
  5. plt.plot(y) 
  6. plt.ylabel('test data') 
  7. plt.xticks(np.arange(0, 10, step=2)) #x轴刻度显示范围是0-10,刻度是2,y轴刻度使用plt.yticks() 
  8. plt.show() 
快速上手Matplotlib常用API

subplot创建多个子图

在matplotlib下,一个Figure对象可以包含多个子图(Axes),可以使用subplot()快速绘制

  1. 实例代码 
  2. from matplotlib import pyplot as plt 
  3. names = ['group_a', 'group_b', 'group_c'] 
  4. values = [1, 10, 100] 
  5. plt.figure(figsize=(9, 3)) #设置主图长款大小 
  6. plt.subplot(131) #131表示一行、三列,第一个 
  7. plt.bar(names, values) 
  8. plt.subplot(132) #132表示一行、三列,第二个 
  9. plt.scatter(names, values) 
  10. plt.subplot(133) #133表示一行、三列,第三个 
  11. plt.plot(names, values) 
  12. plt.suptitle('Categorical Plotting') 
  13. plt.show() 
快速上手Matplotlib常用API

评论关闭