加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 从matplotlib的轮廓中获取坐标?

发布时间:2020-05-25 06:08:58 所属栏目:Python 来源:互联网
导读:背景 从the documentation example here开始,可以使用代码段轻松生成以下等高线图. import matplotlibimport numpy as npimport matplotlib.cm as cmimport matplotlib.mlab as mlabimport matplotlib.pyplot as pltmatplotlib.rcPar

背景

从the documentation example here开始,可以使用代码段轻松生成以下等高线图.

import matplotlib
import numpy as np
import matplotlib.cm as cm
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt

matplotlib.rcParams['xtick.direction'] = 'out'
matplotlib.rcParams['ytick.direction'] = 'out'

delta = 0.025
x = np.arange(-3.0,3.0,delta)
y = np.arange(-2.0,2.0,delta)
X,Y = np.meshgrid(x,y)
Z1 = mlab.bivariate_normal(X,Y,1.0,0.0,0.0)
Z2 = mlab.bivariate_normal(X,1.5,0.5,1,1)
# difference of Gaussians
Z = 10.0 * (Z2 - Z1)

# Create a simple contour plot with labels using default colors.  The
# inline argument to clabel will control whether the labels are draw
# over the line segments of the contour,removing the lines beneath
# the label
plt.figure()
CS = plt.contour(X,Z)
plt.clabel(CS,inline=1,fontsize=10)
plt.title('Simplest default with labels')

我的目标

我已经获得了我的等高线图,同时得到了matplotlib.contour.QuadContourSet实例CS.在示例代码段中,CS仅用于clabel().但是对于我的情况,我需要获得轮廓线的方程或坐标集以进一步计算.

如何从实例CS中提取轮廓线的坐标?要么
我怎样才能以其他方式实现它?

我打赌必须有办法这样做.否则,轮廓事物只是一个“可视化的花瓶”.

解决方法

您可以从CS.allsegs列表中获取轮廓的坐标.

尝试:

dat0= CS.allsegs[0][0]
plt.plot(dat0[:,0],dat0[:,1])

绘制第一个(-1)轮廓水平.

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读