Matplotlib库基础

•pyplot绘制坐标

  • plt.plot(x,y,format_string,**kwargs)

    x:x轴数据,列表或数组,可选
    y:y轴数据,列表或数组
    format_string:控制曲线的格式字符串,可选
    **kwargs:第二组或更多(x,y,format_string)
    当控制多条曲线时,各x不能省略

import matplotlib.pyplot as plt

plt.plot([3,1,4,5,2])
plt.xlabel('x')
plt.ylabel('y')
plt.axis([-1,10,0,6])
#默认png文件,可通过dpi改变输出质量
plt.save('test',dpi=600)
plt.save('test.jpg')
plt.show()

import matplotlib.pyplot as plt
import numpy as np x = np.arange(0,12,2)
plt.plot(x,x*1.5,'*',x,x*2.5,'go:',x,x*3.5,'^--',x,x*4.5,'rx-.')
plt.show()

  • 中文显示

   1.全局 利用matplotlib.rcParams

import matplotlib
import matplotlib.pyplot as plt matplotlib.rcParams['font.family'] = 'SimHei'
matplotlib.rcParams['font.size'] = 10 plt.plot([3,1,4,5,2])
plt.ylabel("纵轴(值)")
plt.xlabel("横轴(变量)")
plt.show()

  2.局部,利用fontproperties

plt.plot([3,1,4,5,2],'r-.')
plt.title('坐标轴',fontproperties='SimHei',fontsize=20)
plt.ylabel('纵轴(值)',fontproperties='SimHei',fontsize=10)
plt.xlabel('横轴(变量)',fontproperties='SimHei',fontsize=10)
# plt.text(2,1,r'$\mu=100$',fontsize=15)
#xy是箭头所在位置 xytext是文本所在位置
#shrink 箭头到文字有空白
plt.annotate(r'$\mu=100$',xy=(3,3),xytext=(3,1.5),\
arrowprops=dict(facecolor='black',shrink=0.1,width=2))
# #表格
plt.grid(True)
plt.show()

import numpy as np
import matplotlib.pyplot as plt x = np.arange(0,12,2)
y = x*0.5
plt.axis([0,10,0,10])
print(x)
print(y)
plt.plot(x,y,'r-.')
plt.title("Label")
plt.xlabel("X-横轴",fontproperties='SimHei',fontsize=15)
plt.ylabel("Y-纵轴",fontproperties='SimHei',fontsize=15)
plt.text(8,8,"这是一个坐标轴",fontproperties='SimHei',fontsize=10)
plt.annotate('Y=X*0.5',fontsize=10,xy=(5,2.5),xytext=(5,5),\
arrowprops=dict(facecolor='black',shrink=0.1,width=0.5))
plt.gride()
plt.show()


•pyplot的子绘图区域

  • plt.subplot(xyz) / plt.subplot(x,y,z)共有x行y列,处于第z个
import matplotlib.pyplot as plt

plt.subplot(2,2,1)
plt.subplot(2,2,2)
plt.subplot(223)
plt.subplot(224)
plt.show()

  • 自定义子区域
  1.plt.subplot2grid((m,n),(x,y),colspan,rowspan)
    第一个元组:把整个画布分成m行n列
    第二个元组:此自定义网格的起始位置
    colspan占列宽度 rowspan占行宽度
import matplotlib.pyplot as plt

plt.subplot2grid((3,3),(0,0),colspan=3)
plt.subplot2grid((3,3),(1,0),colspan=2)
plt.subplot2grid((3,3),(2,0))
plt.subplot2grid((3,3),(2,1))
plt.subplot2grid((3,3),(1,2),rowspan=2)
plt.show()

  2.利用gridspec.GridSpec

  gridspec.GridSpec(m,n)把整个画布分成m行n列
import matplotlib.gridspec as grisdpec

gs = grisdpec.GridSpec(3,3)
plt.subplot(gs[0,:])
plt.subplot(gs[1,:2])
plt.subplot(gs[2,:1])
plt.subplot(gs[2,1:2])
plt.subplot(gs[1:,-1])
plt.show()

最新文章

  1. 解决pip安装超时
  2. Android自动连接指定的wifi,免密码或指定密码
  3. 迷信again
  4. String-自定义功能
  5. Spring之@Configuration配置解析
  6. 手把手教你Linux服务器集群部署.net网站 - 让MVC网站运行起来
  7. linux 解压,源码包
  8. MVC-处理时间格式
  9. 3.2. Grid Search: Searching for estimator parameters
  10. 【转】打包AAC码流到FLV文件
  11. c#程序为PDF文件填写表单内容
  12. svn代码版本管理
  13. mysql 主从同步 实现增量备份
  14. selenium批量执行脚本操作
  15. Docker 网络设置
  16. 【Tomcat】面向初级 Web 开发人员的 Tomcat
  17. 判断js对象类型
  18. ZT Android4.2蓝牙基础架构学习
  19. js小记 unicode 编码解析
  20. VC6无法生成Release版本程序

热门文章

  1. spring5+Struts2+hibernate5
  2. 帆软报表(finereport)图表钻取详细类别 当前页对话框展示
  3. 基于双TMS320C6678 DSP的3U VPX的信号处理平台
  4. 羽夏闲谈—— C 语言入门之问
  5. c++ 移动与拷贝
  6. 为什么使用Mybatis对JDBC进行包装探究
  7. Windows server 2016 2019远程端口修改操作
  8. Keepalived非抢占模式配置
  9. 【C# .Net GC】开篇
  10. 设计模式学习笔记(详细) - 七大原则、UML类图、23种设计模式