np.meshgrid()函数
创始人
2024-03-01 21:29:13

文章目录

    • (1)自己理解
    • (2)官方解释
    • (3)参数:
      • 3.1 x1, x2,…, xn:array_like
      • 3.2 sparse:bool, optional 默认false
      • 3.3 copy:bool, optional

(1)自己理解

np.meshgrid(a, b,indexing = "xy") 函数会返回 b.shape() 行 ,a.shape() 列的二维数组。
因此 i, j 都是 b.shape()行 a.shape() 列 的二维数组。

(2)官方解释

参考:https://numpy.org/doc/stable/reference/generated/numpy.meshgrid.html
代码:numpy.meshgrid(*xi, copy=True, sparse=False, indexing='xy')
作用:给定一维坐标数组 x1、x2、…、xn,制作 N 维坐标数组以对 N 维网格上的 N 维标量/矢量场进行矢量化评估。

(3)参数:

3.1 x1, x2,…, xn:array_like

表示网格坐标的一维数组。

indexing:{'xy', 'ij'}, optional
可选参数,用于设置输出的是笛卡尔(‘xy’,默认)还是矩阵(‘ij’)索引。此函数通过索引关键字参数支持两种索引约定。
给出字符串“ij”返回一个带有矩阵索引的网格,而“xy”返回一个带有笛卡尔索引的网格。
在输入长度为 M 和 N 的二维情况下,对于“xy”索引,输出形状为 (N, M),对于“ij”索引,输出形状为 (M, N)。
在输入长度为 M、N 和 P 的 3-D 情况下,对于“xy”索引,输出的形状为 (N, M, P),对于“ij”索引,输出的形状为 (M, N, P)。

简单示例 (python代码)

import numpy as np
x = [1, 2, 3, 4]
y = [7, 8, 9]X, Y = np.meshgrid(x, y) 
print("X:")
print(X)
print("Y:")
print(Y)
print("==============================")
X1, Y1 = np.meshgrid(x, y,indexing='xy') 
print("X1:")
print(X1)
print("Y1:")
print(Y1)
print("==============================")
X2, Y2 = np.meshgrid(x, y,indexing='ij') 
print("X2:")
print(X2)
print("Y2:")
print(Y2)  

结果输出:

X:
[[1 2 3 4][1 2 3 4][1 2 3 4]]
Y:
[[7 7 7 7][8 8 8 8][9 9 9 9]]
==============================
X1:
[[1 2 3 4][1 2 3 4][1 2 3 4]]
Y1:
[[7 7 7 7][8 8 8 8][9 9 9 9]]
==============================
X2:
[[1 1 1][2 2 2][3 3 3][4 4 4]]
Y2:
[[7 8 9][7 8 9][7 8 9][7 8 9]]

在这里插入图片描述

3.2 sparse:bool, optional 默认false

简单示例 (注:为True的看上面示例)

import numpy as np
x = [1, 2, 3, 4]
y = [7, 8, 9]X, Y = np.meshgrid(x, y,sparse=True) 
print("X:")
print(X)
print("Y:")
print(Y)

结果输出:

X:
[[1 2 3 4]]
Y:
[[7][8][9]]

在这里插入图片描述

meshgrid 对于评估网格上的函数非常有用。如果函数依赖所有坐标,可以使用参数 sparse=True 来节省内存和计算时间。
简单示例:

import numpy as np
x = [1, 2, 3, 4]
y = [7, 8, 9]X, Y = np.meshgrid(x, y,sparse=True) 
zs = np.sqrt(X**2 + Y **2)
print("X.shape,Y.shape,zs.shape",X.shape,Y.shape,zs.shape)
print("==============================")
X1, Y1 = np.meshgrid(x, y,sparse=False) 
zz = np.sqrt(X1**2 + Y1 **2)
print("X1.shape,Y1.shape,zz.shape",X1.shape,Y1.shape,zz.shape)
print("==============================")
print(np.array_equal(zz, zs))

结果输出:

X.shape,Y.shape,zs.shape (1, 4) (3, 1) (3, 4)
==============================
X1.shape,Y1.shape,zz.shape (3, 4) (3, 4) (3, 4)
==============================
True

在这里插入图片描述

3.3 copy:bool, optional

自己暂时不太需要,贴张官方截图:
在这里插入图片描述

相关内容

热门资讯

北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...