python画函数等高线 函数等高线怎么画

Python之神奇的绘图库matplotlib

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

成都创新互联公司长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为栖霞企业提供专业的成都网站设计、网站制作、外贸营销网站建设栖霞网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。

一、填充图

参考代码

简要分析

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

相关推荐:《Python教程》

效果图

二、散点图(scatter plots)

参考代码

简要分析

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

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

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

效果图

三、等高线图(contour plots)

参考代码

简要分析

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

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

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

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

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

效果图

python中怎么在等高线图中添加参考线?

#导入模块

import numpy as np

import matplotlib.pyplot as plt

#建立步长为0.01,即每隔0.01取一个点

step = 0.01

x = np.arange(-10,10,step)

y = np.arange(-10,10,step)

#也可以用x = np.linspace(-10,10,100)表示从-10到10,分100份

#将原始数据变成网格数据形式

X,Y = np.meshgrid(x,y)

#写入函数,z是大写

Z = X**2+Y**2

#填充颜色,f即filled

plt.contourf(X,Y,Z)

#画等高线

contour = plt.contour(X,Y,Z)

#平行于坐标系的参考线

plt.axhline(y=2.5,c='red',ls='--',lw=3)

plt.axvline(x=2,c='green',ls='--',lw=3)

#等高线上标明z(即高度)的值,默认是保留3个小数,可以如下保留四位

plt.clabel(contour,fontsize=10,colors=('k','r'),fmt='%.2f')

plt.show()

差不多就这样吧,有问题的话再留言吧

python菜鸟求助,使用matplotlib 绘制contour等高线图,z为2D数组

下载预Matplotlib编译的安装包,注意选择Python的版本和系统的位数

使用pip包管理器安装,在命令行中输入:pip install 下载安装包的完整路径

打开Python,如果import maplotlib没有报错则安装成功

文章题目:python画函数等高线 函数等高线怎么画
网页网址:https://www.cdcxhl.com/article34/docjhpe.html

成都网站建设公司_创新互联,为您提供建站公司网站收录品牌网站设计外贸建站网站改版小程序开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站制作