ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python numpy.meshgrid()

2021-02-19 13:03:38  阅读:244  来源: 互联网

标签:plt python numpy 矩阵 shape meshgrid np xv yv


numpy.meshgrid()——生成网格点坐标矩阵
关键词:网格点坐标矩阵

网格点是什么?坐标矩阵又是什么?
看个图就明白了:

图中,每个交叉点都是网格点,描述这些网格点的坐标的矩阵,就是坐标矩阵


再看个简单例子:

X矩阵是:[[0. 0.5 1. ], [0. 0.5 1. ]]

Y矩阵是:[[0 0 0],[1 1 1]]

代码如下:

import numpy as np
import matplotlib.pyplot as plt

X = np.array([[0, 0.5, 1],[0, 0.5, 1]])
Y = np.array([[0, 0, 0],[1, 1, 1]])

plt.plot(X, Y, 'o--')
plt.grid(True)
plt.show()

使用meshgrid方法构造同样的坐标矩阵

只需要构造一个表示x轴上的坐标的向量和一个表示y轴上的坐标的向量,然后作为参数给到meshgrid(),该函数就会返回相应维度的两个矩阵。
例如,你想构造一个2行3列的矩阵网格点,那么x生成一个shape(3,)的向量,y生成一个shape(2,)的向量,将x,y传入meshgrid(),最后返回的X,Y矩阵就是shape(2,3)。

x = np.array([0, 0.5, 1])
y = np.array([0,1])

xv,yv = np.meshgrid(x, y)
print("xv的维度:{},shape:{}".format(xv.ndim, xv.shape))
print("yv的维度:{},shape:{}".format(yv.ndim, yv.shape))
print(xv)
print(yv)

plt.plot(xv, yv, 'o--')
plt.grid(True)
plt.show()

针对indexing参数的说明:

indexing只是影响meshgrid()函数返回的矩阵的表示形式,但并不影响坐标点。

x = np.array([0, 0.5, 1])
y = np.array([0,1])

xv,yv = np.meshgrid(x, y,indexing='ij')
print("xv的维度:{},shape:{}".format(xv.ndim, xv.shape))
print("yv的维度:{},shape:{}".format(yv.ndim, yv.shape))
print(xv)
print(yv)

plt.plot(xv, yv, 'o--')
plt.grid(True)
plt.show()

 

参考连接:

1.https://www.cnblogs.com/black-mamba/p/9186965.html

2.https://blog.csdn.net/lllxxq141592654/article/details/81532855

标签:plt,python,numpy,矩阵,shape,meshgrid,np,xv,yv
来源: https://blog.csdn.net/lovezzk/article/details/113861215

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有