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)轮廓水平. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
