Matplotlib 基础

注:本文中的程序都默认引入了numpy库和matplotlib库,并且分别简写为np与plt;如果读者不知道怎么使用numpy库,可以移步到这一博客上进行简单的学习

一、简单绘图案例

  1. #简单的画图例子
  2. x=np.linspace(0,1,num=200)#横坐标
  3. y1=x**2#纵坐标1
  4. y2=x*3+0.2#纵坐标2
  5. #图片框1
  6. plt.figure(1)
  7. plt.plot(x,y1, label='line1')#绘制曲线
  8. plt.plot(x,y2, linewidth=5, color='coral', linestyle='--', label='line2')#绘制不同风格的曲线
  9. plt.legend()
  10. #图片框2
  11. plt.figure(2)
  12. plt.plot(x,y2)
  13. plt.show()#显示

显示结果:

二、设置坐标轴

  1. #坐标轴设置
  2. x=np.linspace(0,1,num=200)
  3. y1=x**2
  4. #图片框1
  5. plt.figure(1)
  6. plt.plot(x,y1)#绘制曲线
  7. #坐标轴设置
  8. plt.xlim((0,1))#x轴取值范围
  9. plt.ylim((0,1))#y轴取值范围
  10. plt.xlabel('x')#x轴轴标
  11. plt.ylabel('y')#y轴轴标
  12. #x轴ticks设置
  13. new_ticks=np.linspace(0,1,5)
  14. plt.xticks(new_ticks)
  15. #设置绘图坐标轴的位置
  16. axis=plt.gca()#获取当前的坐标轴
  17. axis.spines['left'].set_position(('data', 0.1))#将y轴设置到x轴上为1的位置
  18. axis.spines['bottom'].set_position(('data', 0.5))#将x轴设置到y轴上为1的位置
  19. plt.show()

输出结果:

三、图片标注

  1. #图片标注
  2. x=np.linspace(0,1,num=200)
  3. y1=x**2
  4. plt.figure(1)
  5. plt.plot(x,y1,label='line 1')#绘制曲线,label设置为1
  6. plt.legend()
  7. #设置绘图坐标轴的位置
  8. axis=plt.gca()#获取当前的坐标轴
  9. axis.spines['left'].set_position(('data', 0))#将y轴设置到x轴上为0的位置
  10. axis.spines['bottom'].set_position(('data', 0))#将x轴设置到y轴上为0的位置
  11. #被标注点
  12. x0=0.5
  13. y0=0.5**2
  14. plt.scatter(x0, y0, s=30, color='red')#通过散点图来绘制点
  15. plt.plot([x0,x0],[y0,0], color='black', linestyle='--',linewidth=3)#绘制一条垂直于x轴的虚线
  16. #添加标注
  17. plt.annotate('annotation', [x0+0.1,y0], fontsize=10)#在坐标[x0+0.1,y0]处添加标注
  18. plt.show()

输出结果:

四、设置坐标轴游标字体大小

  1. #操作坐标轴的label
  2. x=np.linspace(0,2,num=200)
  3. y1=x**2
  4. #图片框1
  5. plt.figure(1)
  6. plt.plot(x,y1)#绘制曲线
  7. #坐标轴设置
  8. plt.xlim((0,2))#x轴取值范围
  9. plt.ylim((0,2))#y轴取值范围
  10. ax=plt.gca()#拿到现在的坐标轴
  11. for label in ax.get_xticklabels() +ax.get_yticklabels():
  12. label.set_fontsize(12)#设置坐标轴label的字体大小
  13. plt.show()

输出结果:

五、绘制散点图

  1. # scatter 散点图
  2. x=np.random.normal(0,1,100)
  3. y=np.random.normal(0,1,100)
  4. plt.scatter(x,y, s=50, c='blue',marker='o',alpha=0.6)
  5. plt.show()

六、柱状图

  1. x=np.arange(0,10, step=1)
  2. y=np.arange(0,10, step=1)
  3. plt.bar(x,y, color='red', width=0.3)
    #在每一个柱形图上面添加文字标注
  4. for x0,y0 in zip(x,y):
  5. plt.text(x0,y0, '%i'%y0)
  6. plt.show()

输出为:

七、等高线图

  1. #等高线图
  2. x=np.linspace(0,10, 100)
  3. y=np.linspace(0,10, 100)
  4. x_m,y_m=np.meshgrid(x,y)#网格化
  5. z=x_m**2+y_m**2
  6. plt.contourf(x_m, y_m, z, 10, alpha=0.5, cmap=plt.cm.hot)#绘制热图,10代表着高度的分级
  7. c=plt.contour(x_m,y_m, z, 10, colors='black', linewidth=11)#绘制等高线
  8. plt.clabel(c, inline=True, fontsize=10)#为等高线添加标注
  9. plt.show()

八、3D绘图

  1. #3D绘图
  2. from mpl_toolkits.mplot3d import Axes3D
  3. x=np.linspace(0,10, 100)
  4. y=np.linspace(-10,10, 100)
  5. x_m,y_m=np.meshgrid(x,y)#网格化
  6. z=x_m**2+y_m**2
  7. fig=plt.figure()
  8. ax=Axes3D(fig)#为figure添加3D坐标轴
  9. ax.plot_surface(x_m, y_m, z,rstride=5, cstride=5, cmap=plt.cm.hot)#绘制3D的表面, rstide为行跨度,cstride为列跨度
  10. ax.contourf(x_m, y_m, z, zdir='z',offset=6)#offset指的是等高线图与xy平面之间的距离, zdir设置投影方向
  11. plt.show()

九、subplot 绘制多个图

  1. #subplot,绘制子图像
  2. x=np.linspace(0,1,100)
  3. y=x**2
  4.  
  5. plt.figure()
  6. plt.subplot(2, 2,1)#将figure划分为2*2,在编号为1的位置绘图
  7. plt.plot(x,y)
  8.  
  9. plt.subplot(2, 2,2)#将figure划分为2*2,在编号为2的位置绘图
  10. plt.plot(x,x)
  11.  
  12. plt.subplot(2, 2,3)#将figure划分为2*2,在编号为3的位置绘图
  13. plt.plot(y,y)
  14.  
  15. plt.subplot(2, 2,4)#将figure划分为2*2,在编号为4的位置绘图
  16. plt.plot(y,y)
  17.  
  18. plt.show()

matplotlib基础的更多相关文章

  1. 数据分析与展示——Matplotlib基础绘图函数示例

    Matplotlib库入门 Matplotlib基础绘图函数示例 pyplot基础图表函数概述 函数 说明 plt.plot(x,y,fmt, ...) 绘制一个坐标图 plt.boxplot(dat ...

  2. Matplotlib基础图形之散点图

    Matplotlib基础图形之散点图 散点图特点: 1.散点图显示两组数据的值,每个点的坐标位置由变量的值决定 2.由一组不连续的点组成,用于观察两种变量的相关性(正相关,负相关,不相关) 3.例如: ...

  3. Matplotlib基础知识

    Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis水平和垂直的轴线 x轴和y轴刻度 tick刻度标示坐标轴的分隔,包括最小刻度和最大刻度 x轴和y轴刻度标签 ...

  4. Matplotlib基础使用

    matplotlib 一.Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis 水平和垂直的轴线 x轴和y轴刻度 tick 刻度标示坐标轴的分隔,包括最小刻度 ...

  5. 模块简介与matplotlib基础

    模块简介与matplotlib基础 1.基本概念 1.1数据分析 对已知的数据进行分析,提取出一些有价值的信息. 1.2数据挖掘 对大量的数据进行分析与挖掘,得到一些未知的,有价值的信息. 1.3数据 ...

  6. [笔记]SciPy、Matplotlib基础操作

    NumPy.SciPy.Matplotlib,Python下机器学习三大利器.上一篇讲了NumPy基础操作,这节讲讲SciPy和Matplotlib.目前接触到的东西不多,以后再遇到些比较常用的再更新 ...

  7. 第二周 数据分析之展示 Matplotlib基础绘图函数实例

    Pyplot基础图表函数 Pyplot饼图的绘制: Pyplot直方图的绘制: Pyplot极坐标图的绘制: Pyplot散点图的绘制: 单元小结: import numpy as np import ...

  8. python数据图形化—— matplotlib 基础应用

    matplotlib是python中常用的数据图形化工具,用法跟matlab有点相似.调用简单,功能强大.在Windows下可以通过命令行 pip install matplotlib 来进行安装. ...

  9. python画图matplotlib基础笔记

    numpy~~基础计算库,多维数组处理 scipy~~基于numpy,用于数值计算等等,默认调用intel mkl(高度优化的数学库) pandas~~强大的数据框,基于numpy matplotli ...

随机推荐

  1. java核心技术第三篇之JDBC第一篇

    01.JDBC_两个重要的概念: 1).什么是数据库驱动程序:由数据库厂商提供,面向某种特定的编程语言所开发的一套访问本数据库的类库. 驱动包一般由两种语言组成,前端是:面向某种特定编程语言的语言:后 ...

  2. Define the Data Model and Set the Initial Data 定义数据模型并设置初始数据

    This topic describes how to define the business model and the business logic for WinForms and ASP.NE ...

  3. 如何在CAD中批量打印图纸?这种方法你要知道

    CAD图纸都是使用CAD制图软件进行设计出来的,图纸的格式均为dwg格式的,不方便进行使用.就需要将图纸进行打印出来.多张CAD图纸如果一张一张进行打印速度就会非常的慢,那就可以使用CAD中的批量打印 ...

  4. UITableViewStyleGrouped 类型 tableView sectionHeader 高度问题

    UITableViewStyleGrouped 类型的 tableView 在适配的时候出现很大的问题.记录一下 按照之前的方法,只需要执行以下的代码就能够很好的解决 section == 0 的时候 ...

  5. java 和 spring 的异步

    spring 的 async 注解 https://www.baeldung.com/spring-async@Async will make it execute in a separate thr ...

  6. [20190531]建立job与commit.txt

    [20190531]建立job与commit.txt --//昨天看链接:https://connor-mcdonald.com/2019/05/28/dbms_job-the-joy-of-tran ...

  7. [视频教程] ubuntu系统下安装最新版的MySQL

    视频地址: https://www.bilibili.com/video/av69256331/ 官网文档https://dev.mysql.com/doc/mysql-apt-repo-quick- ...

  8. cannot resolve symbol 'XXX'

    原因:出现这种情况的原因是在IDEA或者myeclipse编译器中没有导入相关的jar包(jar包相当于类的集合,可以使用其中的类): 针对IDEA出现cannot resolve symbol 'X ...

  9. python27期python连接数据库:

    import pymysql创建connectinon对象:con = pymysql.connect(host = "localhost",user = "root&q ...

  10. STS(Spring Tool Suite)中.yml文件的语法颜色设置

    点击Window --> 最下面点击 YEdit Preferences --> 点击 color Preferences 弹出以下对话框进行修改颜色