位置: 编程技术 - 正文

利用matplotlib+numpy绘制多种绘图的方法实例(利用Matplotlib对一组数据进行分析)

编辑:rootadmin

推荐整理分享利用matplotlib+numpy绘制多种绘图的方法实例(利用Matplotlib对一组数据进行分析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:利用Matplotlib对金融数据进行可视化,利用Matplotlib绘图软件制作散点图,利用Matplotlib对一组数据进行分析,利用Matplotlib绘图软件制作散点图,利用Matplotlib 制作折线图,条形图,散点图,直方图,利用Matplotlib绘图软件制作散点图,利用matplotlib做数据可视化,利用Matplotlib 制作折线图,条形图,散点图,直方图,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

matplotlib 是Python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。本文将以例子的形式分析matplot中支持的,分析中常用的几种图。其中包括填充图、散点图(scatter plots)、. 条形图(bar plots)、等高线图(contour plots)、 点阵图和3D图,下面来一起看看详细的介绍:

一、填充图

参考代码

简要分析

这里主要是用到了fill_between函数。这个函数很好理解,就是传入x轴的数组和需要填充的两个y轴数组;然后传入填充的范围,用where=来确定填充的区域;最后可以加上填充颜色啦,透明度之类修饰的参数。

当然fill_between函数还有更加高级的用法,详见fill_between用法或者help文档。

效果图

二、散点图(scatter plots)

参考代码

简要分析

首先介绍一下numpy 的normal函数,很明显,这是生成正态分布的函数。这个函数接受三个参数,分别表示正态分布的平均值,标准差,还有就是生成数组的长度。很好记。

然后是arctan2函数,这个函数接受两个参数,分别表示y数组和x数组,然后返回对应的arctan(y/x)的值,结果是弧度制。

接下来用到了绘制散点图的scatter方法,首先当然是传入x和y数组,接着s参数表示scale,即散点的大小;c参数表示color,我给他传的是根据角度划分的一个数组,对应的就是每一个点的颜色(虽然不知道是怎么对应的,不过好像是一个根据数组内其他元素进行的相对的转换,这里不重要了,反正相同的颜色赋一样的值就好了);最后是alpha参数,表示点的透明度。

至于scatter函数的高级用法可以参见官方文档scatter函数或者help文档。

最后设置下坐标范围就好了。

效果图

三、条形图(bar plots)

参考代码

简要分析

注意要手动导入pylab包,否则会找不到bar。。。

首先用numpy的arange函数生成一个[0,1,2,…,n]的数组。(用linspace也可以)

其次用numpy的uniform函数生成一个均匀分布的数组,传入三个参数分别表示下界、上界和数组长度。并用这个数组生成需要显示的数据。

然后就是bar函数的使用了,基本用法也和之前的plot、scatter类似,传入横纵坐标和一些修饰性参数。

接着我们需要用for循环来为柱状图显示数字:用python的zip函数将X和Y1两两配对并循环遍历,得到每一个数据的位置,然后用text函数在该位置上显示一个字符串(注意位置上的细节调整)。text传入横纵坐标,要显示的字符串,ha参数制定横向对齐,va参数制定纵向对齐。

利用matplotlib+numpy绘制多种绘图的方法实例(利用Matplotlib对一组数据进行分析)

最后调整下坐标范围,并且取消横纵坐标上的刻度以保持美观即可。

至于bar函数的具体用法可以参照bar函数用法或者help文档。

效果图

四、等高线图(contour plots)

参考代码

简要分析

首先要明确等高线图是一个三维立体图,所以我们要建立一个二元函数f,值由两个参数控制,(注意,这两个参数都应该是矩阵)。

然后我们需要用numpy的meshgrid函数生成一个三维网格,即,x轴由第一个参数指定,y轴由第二个参数指定。并返回两个增维后的矩阵,今后就用这两个矩阵来生成图像。

接着就用到coutourf函数了,所谓contourf,大概就是contour fill的意思吧,只填充,不描边;这个函数主要是接受三个参数,分别是之前生成的x、y矩阵和函数值;接着是一个整数,大概就是表示等高线的密度了,有默认值;然后就是透明度和配色问题了,cmap的配色方案这里不多研究。

随后就是contour函数了,很明显,这个函数是用来描线的。用法可以类似的推出来,不解释了,需要注意的是他返回一个对象,这个对象一般要保留下来个供后续的加工细化。

最后就是用clabel函数来在等高线图上表示高度了,传入之前的那个contour对象;然后是inline属性,这个表示是否清除数字下面的那条线,为了美观当然是清除了,而且默认的也是1;再就是指定线的宽度了,不解释,。

效果图

五、点阵图

参考代码

简要分析

这段代码的目的就是将一个矩阵直接转换为一张像照片一样的图,完整的进行显示。

前面的代码就是生成一个矩阵Z,不作解释。

接着用到了imshow函数,传人Z就可以显示出一个二维的图像了,图像的颜色是根据元素的值进行的自适应调整,后面接了一些修饰性的参数,比如配色方案(cmap),零点位置(origin)。

最后用colorbar显示一个色条,可以不传参数,这里传进去shrink参数用来调节他的长度。

效果图

六、3D图

参考代码

简要分析

有点麻烦,需要用到的时候再说吧,不过原理也很简单,跟等高线图类似,先画图再描线,最后设置高度,都是一回事。

效果图

总结

标签: 利用Matplotlib对一组数据进行分析

本文链接地址:https://www.jiuchutong.com/biancheng/375612.html 转载请保留说明!

上一篇:Pycharm学习教程(5) Python快捷键相关设置(pycharm怎么学)

下一篇:利用numpy+matplotlib绘图的基本操作教程(利用职务之便谋取私利是什么罪)

  • 所得税税前扣除项目及扣除标准
  • 政府返还土地款的会计处理
  • 增量留抵退税会计处理
  • 企业之间交换房屋 契税
  • 借款人和还款人不相同的情况下逾期还款会影响哪方信用
  • 新成立的企业都有哪些
  • 公允价值变动损益借贷方向
  • 一般纳税人购入商品取得普通发票
  • 预计负债收回的会计分录
  • 企业出售产品
  • 预收账款多说明什么
  • 应收账款收回时间怎么体现
  • 电费 进项税
  • 企业挂靠税收市收取的标准是什么
  • 销售无形资产增值税纳税义务发生时间
  • 核定征收未分配利润分红分录
  • 个人劳务报酬个人所得税怎么算
  • 个体户金税盘清卡失败怎么办
  • 预付卡发票报销单怎么写
  • 停车费属于不动产租赁服务税率
  • 收到个人转款会计分录
  • 支票票号都是第二行吗
  • bios设置定时重启
  • 公司收到项目的现金
  • 留存利润和利润的关系
  • php做
  • 三代税款手续费支付比例
  • 应收账款转让分录
  • 关于怀孕在线咨询
  • vite首次打开界面加载慢问题/解决
  • 单反镜头直径越大是不是就越好
  • kzip_main.exe是什么
  • 包装物适用的税率是多少
  • php中各种定义变量的值
  • windowsserver2008r2密码重置
  • 不构成业务的反义词
  • 逆算法怎么算
  • php多线程与并发
  • 库存商品盘亏计入哪个科目
  • 城建税减半吗
  • 企业办理退税,税务机关要检查吗
  • 股东出资不足需要赔偿吗
  • 支付广告费没有票怎么入账
  • mysql5.6解压版安装教程
  • 企业哪些支出可以用现金支付
  • 投资收益属于资产嘛
  • 承兑汇票收据开什么发票
  • 未开票收入如何结转成本
  • 京东预付是什么意思
  • 营业外收入的账户核算有哪些
  • 应交税费的记账分录
  • 公司社保委托代发银行是工资卡银行吗
  • 代理服务费计入什么科目
  • 递延收益的主要形式有
  • 投资其他公司做什么科目
  • 汇算清缴退款如何做账
  • ubuntu 安装
  • WIN7系统的电脑里可以安装会声会影10吗?
  • ghost装机顺序
  • 你一定不知道的56个历史真相
  • 苹果mac怎么查看运行数据
  • windows7 停止服务
  • win7系统存储在哪
  • win7 64位纯净版图标变成了一样该怎么办?win7旗舰版图标变成一样的解决方法
  • windows8怎么设置开机启动项
  • 浅谈特殊儿童的融合教育论文
  • 如何理解shell
  • jQuery.parseHTML() 函数详解
  • bat批量命名
  • 批处理设置dns
  • js nextSibling属性和previousSibling属性概述及使用注意
  • 迄今最好的Http请求框架
  • 安卓手机管家是什么
  • shell脚本特性
  • js中refresh
  • js中的类是什么
  • 税务申报热线电话
  • 百旺税控盘怎么备份数据
  • 杭州市税务局总局地址
  • 新疆塔城靠近俄罗斯吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设