python+matplotlib 绘制等高线
python+matplotlib 绘制等高线
步骤有七:
- 有一个m*n维的矩阵(data),其元素的值代表高度
- 构造两个向量:x(1*n)和y(1*m)。这两个向量用来构造网格坐标矩阵(网格坐标矩阵m*n维,可见与data同)
- 构造网格坐标矩阵X,Y
- 进行颜色填充
- 画等高线
- 等高线的描述
- 删掉坐标系
1. 构造一下高度矩阵:
- def f(x,y):
- """
- 计算高度的函数
- :param x: 向量
- :param y: 向量
- :return: dim(x)*dim(y)维的矩阵
- """
- # the height function
- return (1 - x / 2 + x**5 + y**3) * np.exp(-x**2 -y**2)
2. 构造两个向量:
- x = np.linspace(-5,5,256)
- y = np.linspace(-5,5,256)
3. 构造网格坐标矩阵:
- X,Y = np.meshgrid(x,y) # 获得网格坐标矩阵
4. 进行颜色填充:
- # 进行颜色填充
- plt.contourf(X,Y,f(X,Y),8,cmap=plt.cm.hot)
5. 画等高线:
- # 进行等高线绘制
- c = plt.contour(X,Y,f(X,Y),8,colors='black')
6. 等高线描述:
- # 线条标注的绘制
- plt.clabel(c,inline=True,fontsize=10)
7. 删除两条坐标:
- plt.xticks(())
- plt.yticks(())
-------------------------------------------------------------------------------------------------
将上面的代码总结一下:
- import numpy as np
- import matplotlib.pyplot as plt
- def f(x,y):
- """
- 计算高度的函数
- :param x: 向量
- :param y: 向量
- :return: dim(x)*dim(y)维的矩阵
- """
- # the height function
- return (1 - x / 2 + x**5 + y**3) * np.exp(-x**2 -y**2)
- x = np.linspace(-5,5,256)
- y = np.linspace(-5,5,256)
- X,Y = np.meshgrid(x,y) # 获得网格坐标矩阵
- # 进行颜色填充
- plt.contourf(X,Y,f(X,Y),8,cmap=plt.cm.hot)
- # 进行等高线绘制
- c = plt.contour(X,Y,f(X,Y),8,colors='black')
- # 线条标注的绘制
- plt.clabel(c,inline=True,fontsize=10)
- plt.xticks(())
- plt.yticks(())
- plt.show()
运行结果:
python+matplotlib 绘制等高线的更多相关文章
- 【转】使用Python matplotlib绘制股票走势图
转载出处 一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使 ...
- python+matplotlib+绘制不同图标类型
#==================================================================#首先需要导入两个文件import matplotlib.pypl ...
- Python Matplotlib绘制气温图表
代码中数据从 www.wunderground.com/history/ 下载 #coding=utf-8 import csv from datetime import datetime from ...
- python matplotlib绘制六种可视化图表
1. 折线图 绘制折线图,如果你数据不是很多的话,画出来的图将是曲折状态,但一旦你的数据集大起来,比如下面我们的示例,有100个点,所以我们用肉眼看到的将是一条平滑的曲线. 这里我绘制三条线,只要执行 ...
- Python matplotlib绘制圆环图
一.语法和参数简介 plt.pie(x2,labels=labels, autopct = '%0.2f%%', shadow= False, startangle =0,labeldistance= ...
- Python学习(一) —— matplotlib绘制三维轨迹图
在研究SLAM时常常需要对其输出的位姿进行复现以检测算法效果,在ubuntu系统中使用Python可以很好的完成相关的工作. 一. Ubuntu下Python的使用 在Ubuntu下使用Python有 ...
- Python 使用 matplotlib绘制3D图形
3D图形在数据分析.数据建模.图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何在Python中使用 matplotlib进行3D图形的绘制,包括3D散点.3D表面.3D轮廓.3D直线( ...
- python使用matplotlib绘制折线图教程
Matplotlib是一个Python工具箱,用于科学计算的数据可视化.借助它,Python可以绘制如Matlab和Octave多种多样的数据图形.下面这篇文章主要介绍了python使用matplot ...
- Python——使用matplotlib绘制柱状图
Python——使用matplotlib绘制柱状图 1.基本柱状图 首先要安装matplotlib(http://matplotlib.org/api/pyplot_api.htm ...
随机推荐
- Windows 消息框架: SDK教程
关键字:WindowsSDK 消息机制 http://www.codeproject.com/Articles/599/Windows-Message-Handling-Part-3 Handling ...
- MVG配置
MVG的配置:(前提是一个表的字段包含多值字段,一般是1:M或M:M的关系) 想要在学生界面显示多个教师的名称. 1.首先在一个Project中,建两张表学生表和教师表T_Stu与T_Tea和一张中间 ...
- 【Python自然语言处理】第一章学习笔记——搜索文本、计数统计和字符串链表
这本书主要是基于Python和一个自然语言工具包(Natural Language Toolkit, NLTK)的开源库进行讲解 NLTK 介绍:NLTK是一个构建Python程序以处理人类语言数据的 ...
- windows默认共享的打开和关闭?
windows默认共享的打开和关闭? Windows启动时都会默认打开admin$ ipc$ 和每个盘符的共享,对于不必要的默认共享,一般都会把它取消掉,可当又需要打开此默认共享时,又该从哪里设置 ...
- 如何使用Putty登录安装在VirtualBox里的ubuntu
我是在Windows操作系统里用VirtualBox安装了ubuntu操作系统. 在VirtualBox里操作ubuntu的终端不是很方便,比如我想在Windows里复制一些命令到ubuntu的终端执 ...
- 浅析内存对齐与ANSI C中struct型数据的内存布局-内存对齐规则
这些问题或许对不少朋友来说还有点模糊,那么本文就试着探究它们背后的秘密. 首先,至少有一点可以肯定,那就是ANSI C保证结构体中各字段在内存中出现的位置是随它们的声明顺序依次递增的,并且第一个字段的 ...
- Ajax系列之三:UpdatePanel
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhanghongjie0302/article/details/35609691 ...
- 2019年5月训练记录(更新ing)
前言 \(ZJOI\)正式结束了. 但期中考试只考了年级\(216\),退役既视感... 于是就被抓回去补文化课了. 下半个学期可能要以文化课为主了吧! 但周三.周日应该还是会正常参加训练的,但其他时 ...
- intelli j中如何重启tomcat,或者关掉tomcat?每次点run都提示jmx端口占用
方法1.idea有时候会这样,我一般都是直接打开任务管理器,把java进程给杀掉就好了.
- Webpack2入门
webpack 2 将在其文档完成之后正式发布.但这并不意味着不可以开始使用它,如果你知道怎么配置的话. 什么是 Webpack? 简单来说,Webpack 就是一个针对 JavaScript 代码的 ...