等高线

Matplotlib之contuor等高线图

久未见 提交于 2019-12-05 13:42:55
画出类似于下图的等高线图: 代码如下: import matplotlib.pyplot as plt from numpy import * n=256 x=linspace(-3,3,n) y=linspace(-3,3,n) X,Y=meshgrid(x,y) Z=(1-X/2+X**5+Y**3)*exp(-X**2-Y**2) #等高线填充 plt.contourf(X,Y,Z,8,alpha=0.75,cmap=plt.cm.hot) #添加等高线 C=plt.contour(X,Y,Z,8,colors='black',linewidths=0.3) #添加label plt.clabel(C,inline='True',fontsize=10) plt.xticks(()) plt.yticks(()) plt.show() 代码解释: X,Y=meshgrid(x,y)函数的返回值是二维网格坐标。 X是一个矩阵,其中的每一行数据都是x(数组x相当于是一个行向量),X是由length(y)行x组成的。同样Y这个矩阵的每一列都是y(数组y相当于是一个列向量),Y是由length(x)列y组成的。所以说X和Y是相似矩阵。 例子: >>> x=[1,2] >>> y=[1,2,3,4] >>> X,Y=meshgrid(x,y) >>> X array([[1, 2],

matplotlib - 饼图、等高线图

ⅰ亾dé卋堺 提交于 2019-12-05 13:40:31
文章目录 首先来介绍饼图 接下来我们来绘制等高线图 plt.contour plt.contourf 注意 今天来学习一下画饼图和等高线图。 其实和之前我们画图的技巧是一样的,只是画饼图和画等高线图我们又用到了新的两种方法。 饼图: plt.pie() 等高线图: plt.contourf 、 plt.contour 首先来介绍饼图 语法: plt.pie(值,间隙,标签,颜色,格式,shadow=是否带阴影,startangel=其实角度) 其实很简单。 代码: #导入模块 import numpy as np import matplotlib . pyplot as plt #准备数据 values = [ 26 , 17 , 21 , 29 , 11 ] #准备间距 spaces = [ 0.05 , 0.01 , 0.01 , 0.01 , 0.01 ] #准备标签 labels = [ 'Python' , 'JavaScript' , 'C++' , 'Java' , 'PHP' ] #每一个的标签的颜色 colors = [ 'dodgerblue' , 'orangered' , 'limegreen' , 'violet' , 'gold' ] #创建图形窗口 plt . figure ( 'Pie' , facecolor = 'lightgray' )

tf好朋友之matplotlib的使用——contour等高线的绘制

狂风中的少年 提交于 2019-12-05 13:39:14
tf好朋友之matplotlib的使用——contour等高线的绘制 等高线绘制常用函数 plt.contourf() plt.contour() plt.clabel() 应用示例 大家都有学过地理噢!地理里面有一个很帅气的东西叫做!等!高!线! 等高线绘制常用函数 plt.contourf() 该函数用于定义等高线图两条线之间的填充物。 应用方法如下: # 调用等高线的填充物 plt . contourf ( X , Y , f_x_y , 8 , alpha = 0.5 , cmap = plt . cm . hot ) 其中,X,Y分别代表网格化后的x,y坐标;f_x_y对于等高线而言,其代表了高度;8代表等高线要分为10块(输入0时等高线分为2块);alpha代表每个填充物的透明度;cmap代表填充的色调,这里选择hot热烈的色调,其可选择的内容可以参考 https://matplotlib.org/examples/color/colormaps_reference.html 。 其调用结果为: plt.contour() 该函数用于定义等高线中的线。 应用方法如下: # 定义等高线的线的颜色,宽度 C = plt . contour ( X , Y , f_x_y , 8 , colors = 'black' , linewidth = 5 ) 其中,X

matplotlib学习—画等高线图

℡╲_俬逩灬. 提交于 2019-12-05 13:38:54
最近想寻找一种能利用已有数据画出地理位置分布图的方法,在看 Vamei 写的博客 绘图: matplotlib核心剖析 学习matplotlib绘图的过程中找到了名为“contour”(等高线图)的绘图方式 等高线图:等高线地图就是将地表高度相同的点连成一环线直接投影到平面形成水平曲线。 不同高度的环线不会相合,除非地表显示悬崖或峭壁才能使某处线条太密集出现重叠现像,若地表出线平坦开阔的山坡,曲线间之距离就相当宽。 (ps:从百度百科上扒来的一段话。话说百科上面错别字还是不少的,最后一行的“出现”错写成了“出线”) 对我这种学计算机的工科生来说,接触等高线图大部分(甚至可以说唯一)的机会就在初中和高中时的地理课堂上了,such as : 下面来介绍怎么用matplotlib画简单的等高线图: 代码的参考来自于 绘图: matplotlib核心剖析 和 matplotlib的基本用法(九)——绘制等高线图 # -*- coding:utf-8 -*- #引入numpy库和matplotlib库 import numpy as np import matplotlib.pyplot as plt # 定义等高线图的横纵坐标x,y #从左边取值为从 -3 到 3 ,各取5个点,一共取 5*5 = 25 个点 x = np.linspace(- 3 , 3 , 5 ) y = np

Python Matplotlib contour和contourf:绘制等高线

倾然丶 夕夏残阳落幕 提交于 2019-12-05 13:37:47
等高线图需要的是三维数据,其中 X、Y 轴数据决定坐标点,还需要对应的高度数据(相当于 Z 轴数据)来决定不同坐标点的高度。 有了合适的数据之后,程序调用 contour() 函数绘制等高线,调用 contourf() 函数为等高线图填充颜色。 在调用 contour()、contourf() 函数时可以指定如下常用参数: x:指定 X 轴数据。 y:指定 Y 轴数据。 z:指定 X、Y 坐标对应点的高度数据。 colors:指定不同高度的等高线的颜色。 alpha:指定等高线的透明度。 cmap:指定等高线的颜色映射,即自动使用不同的颜色来区分不同的高度区域。 linewidths:指定等高线的宽度。 linestyles:指定等高线的样式。 下面程序使用 contour()、contourf() 函数来绘制等高线图: 上面程序中,第 16 行代码用于为等高线图填充颜色,此处指定了 cmap 参数,这意味着程序将会使用不同的颜色映射来区分不同高度的区域。 程序中第 19 行代码调用 contour() 函数来绘制等高线。运行上面程序,可以看到如图 1 所示的效果。 图 1 contour和contourf绘制等高线图 来源: CSDN 作者: 嗨学编程 链接: https://blog.csdn.net/fei347795790/article/details/94331203

matplotlib 等高线的绘制 —— plt.contour 与 plt.contourf

◇◆丶佛笑我妖孽 提交于 2019-12-05 13:36:57
contour:轮廓,等高线。 为等高线上注明等高线的含义: cs = plt.contour(x, y, z) plt.clabel(cs, inline=1, fontsize=10) plt.contourf 与 plt.contour 区别: f:filled,也即对等高线间的填充区域进行填充(使用不同的颜色); contourf:将不会再绘制等高线(显然不同的颜色分界就表示等高线本身), 增加 colorbar; cb = plt.colorbar() cb.set_label('meters') 默认 colorbar 是竖直放置,通过 orientation 关键字参数,可将其设置为水平放置; cb = plt.colorbar(orientation='horizontal') 1. 等高线绘制的步骤 等高线是三维图像在二维空间的投影。 首先准备三维函数及待投影平面的网格坐标 f ( x , y ) = sin ⁡ 2 ( w x ) sin ⁡ 2 ( w y ) exp ⁡ ( x + y σ ) f(x,y)=\sin^2(wx)\sin^2(wy)\exp(\frac{x+y}{\sigma}) f ( x , y ) = sin 2 ( w x ) sin 2 ( w y ) exp ( σ x + y ​ ) def f(x, y, w=5, sigma

三、数据可视化:matplotlib.pyplot (mp) 8、等高线图

匿名 (未验证) 提交于 2019-12-02 23:43:01
8.等高线图 线: mp.contour(x, y, z, 线数, colors=颜色, linewidths=线宽) 色带: mp.contourf(x, y, z, 线数, cmap=颜色映射) import numpy as np import matplotlib.pyplot as mp n = 1000 # 栅格化(网格化)函数 x, y = np.meshgrid(np.linspace(-3, 3, n), np.linspace(-3, 3, n)) z = (1 - x / 2 + x ** 5 + y ** 3) * \ np.exp(-x ** 2 - y ** 2) mp.figure('Contour', facecolor='lightgray') mp.title('Contour', fontsize=20) mp.xlabel('x', fontsize=14) mp.ylabel('y', fontsize=14) mp.tick_params(labelsize=10) mp.grid(linestyle=':') mp.contourf(x, y, z, 8, cmap='jet') # 等高线 cntr = mp.contour(x, y, z, 8, colors='black', linewidths=0.5) # 给等高线加标签

机器学习-SVM

此生再无相见时 提交于 2019-12-01 12:28:30
机器学习-SVM理论 理论知识 SVM是在神经网络模型及CNN出现之前很火的一种分类模型。它有很好的泛化能力。 线性可分支持向量机:当data线性可分时使用 如果两类数据是线性可分的,那么如果垂直n维超平面做一个投影面,则这两类数据一定可以投影到低维空间中且还是可分的。 线性可分SVM中不会出现在分割面上及支撑面和分割面之间的缓冲部分(人造词汇,不是专业名称),最多出现在支撑面上。但是在线性SVM中是可能的。 硬间隔最大化(hard margin maximization) 硬间隔 硬间隔支持向量机 线性支持向量机:当data不是线性的,但是可以在一定错误率下线性分开 软间隔最大化(soft margin maximization) 软间隔 软间隔支持向量机 非线性支持向量机:在线性可分或线性的基础上加上核函数,实现非线性分类的效果 核函数kernel function 对于高斯核函数,c越大,过渡带越窄;γ越大,分割界面的非线性程度越大(当γ倾向于无穷大时,SVM就退化为 注意,我们一般把向量定义为列向量,这里的w和x都是这样的 将一个点带入,如果式子大于0,表示是在法向量的同方向;小于0,表示是在法向量的逆方向。如果这么来看,最严谨的标法应该是把上图中w的方向换一下,即**法向量w永远指向以直线划分的大于0的方向。之后其实没必要对这个太过于纠结