首页 > 编程语言 >numpy.meshgrid() in Python

numpy.meshgrid() in Python

时间:2023-11-08 23:14:43浏览次数:43  
标签:... Python meshgrid 坐标 数组 print numpy

numpy.meshgrid函数用于从表示笛卡尔索引或矩阵索引的两个给定一维数组中创建矩形网格。网格函数是从MATLAB中得到启发的。

语法

numpy.asarray(arr,dtype=None,order=None)

参数

x1, x2,…, xn: array_like
表示网格坐标的一维数组。

indexing: {‘xy’, ‘ij’},可选
输出的笛卡尔(‘xy’,默认)或矩阵(‘ij’)索引。有关详细信息,请参阅注释。

sparse: 布尔型,可选
如果为 True,则返回维度坐标数组的形状i从减少(N1, ..., Ni, ... Nn)到(1, ..., 1, Ni, 1, ..., 1).这些稀疏坐标网格旨在与广播.在表达式中使用所有坐标时,广播仍会导致 fully-dimensonal 结果数组。

默认为假。

copy: 布尔型,可选
如果为 False,则返回原始数组的视图以节省内存。默认为真。请注意,sparse=False, copy=False 可能会返回不连续的数组。此外,广播数组的不止一个元素可以指代单个存储器位置。如果您需要写入数组,请先制作副本。

返回

X1, X2,…, XN: ndarray
对于向量x1,x2,..., ‘xn’ 有长度Ni=len(xi), 返回(N1, N2, N3,...Nn)如果 indexing='ij' 或(N2, N1, N3,...Nn)如果 indexing='xy' 的元素为xi重复以沿第一维填充矩阵x1,第二个为x2等等。

例子

考虑下图,X轴范围为-4到4,Y轴范围为-5到5。因此,图中总共标记了(9*11)=99个点,每个点都有一个X坐标和一个Y坐标。对于任何平行于X轴的直线,标记点的X坐标分别为-4、-3、-2、-1、0、1、2、3、4。另一方面,对于任何平行于Y轴的直线,标记点从下到上的Y坐标为-5、-4、-3、-2、-1、0、1、2、3、4、5。numpy.meshgrid函数返回两个二维数组,表示所有点的X和Y坐标。

import numpy as np
from matplotlib import pyplot as plt
x = np.linspace(-4, 4, 9)
y = np.linspace(-5, 5, 11)
x_1, y_1 = np.meshgrid(x, y)

print("x_1 = ")
print(x_1)
print("y_1 = ")
print(y_1)

plt.plot(x_1,y_1,color='red',marker='.',linestyle='')
plt.grid(True)
plt.show()

输出

x_1 = 
[[-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]
 [-4. -3. -2. -1.  0.  1.  2.  3.  4.]]
y_1 = 
[[-5. -5. -5. -5. -5. -5. -5. -5. -5.]
 [-4. -4. -4. -4. -4. -4. -4. -4. -4.]
 [-3. -3. -3. -3. -3. -3. -3. -3. -3.]
 [-2. -2. -2. -2. -2. -2. -2. -2. -2.]
 [-1. -1. -1. -1. -1. -1. -1. -1. -1.]
 [ 0.  0.  0.  0.  0.  0.  0.  0.  0.]
 [ 1.  1.  1.  1.  1.  1.  1.  1.  1.]
 [ 2.  2.  2.  2.  2.  2.  2.  2.  2.]
 [ 3.  3.  3.  3.  3.  3.  3.  3.  3.]
 [ 4.  4.  4.  4.  4.  4.  4.  4.  4.]
 [ 5.  5.  5.  5.  5.  5.  5.  5.  5.]]

画图

标签:...,Python,meshgrid,坐标,数组,print,numpy
From: https://www.cnblogs.com/zhouXX/p/17818553.html

相关文章

  • Python实验:Socket编程
    实验六Socket编程一、实验目标:了解TCP协议原理、标准库socket的用法、熟悉Socket编程。1.TCP协议原理:TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接的、可靠的、基于流的协议,用于在计算机网络中传输数据。它是互联网协议套件中的一部分,通常与IP(Internet......
  • 练手python脚本分享
    分享一个最近练手的脚本,没什么实际意义,纯粹就是练手用的,最近准备把python拿出来再练练,所以随意找了点东西研究下,脚本里主要用到了ttkbootstrap来做GUI,以及非常非常基础的azurepython的SDKimportdatetimeimportttkbootstrapasttkfromttkbootstrap.constantsimport*fromt......
  • Python中的列表和元组:添加、修改和删除元素的技巧
    在Python中,列表(List)和元组(Tuple)都是用于存储数据的集合类型。虽然它们在某些方面相似,例如都可以存储各种类型的数据,但它们也有一些重要的区别,比如可变性。列表是可变的,意味着我们可以更改、添加或删除列表中的元素,而元组是不可变的,一旦它被创建,就不能更改。在这篇文章中,我们将详细......
  • Python 数据库应用教程:安装 MySQL 及使用 MySQL Connector
    Python可以用于数据库应用程序。其中最流行的数据库之一是MySQL。MySQL数据库为了能够在本教程中尝试代码示例,您应该在计算机上安装MySQL。您可以在MySQL官方网站下载MySQL数据库。安装MySQL驱动程序Python需要一个MySQL驱动程序来访问MySQL数据库。在本教程中,我们将使用"......
  • 以多个文件的名称为基准复制其他路径下的同名文件:Python实现
      本文介绍基于Python语言,针对一个文件夹下大量的Excel表格文件,基于其中每一个文件的名称,从另一个文件夹中找到与这一文件夹中文件同名的文件,并将找到的同名文件复制到第三个文件夹中的方法。  首先,我们来明确一下本文的具体需求。现有一个文件夹,其中有大量的Excel表格文件(在......
  • Python如何将日志输入到文件里
    要将日志输出到文件中,你可以使用Python标准库的`logging`模块。以下是一个示例,演示如何配置`logging`模块来记录日志到文件:```pythonimportlogging#配置日志log_file='/path/to/your/logfile.log'logging.basicConfig(  filename=log_file,  level=logging.DEBU......
  • Python 数据库应用教程:安装 MySQL 及使用 MySQL Connector
    Python可以用于数据库应用程序。其中最流行的数据库之一是MySQL。MySQL数据库为了能够在本教程中尝试代码示例,您应该在计算机上安装MySQL。您可以在MySQL官方网站下载MySQL数据库。安装MySQL驱动程序Python需要一个MySQL驱动程序来访问MySQL数据库。在本教程中,我们将使用......
  • python循环遍历字典: title_content_list.append([key, value])print(ti
    示例示例Python循环遍历字典的方法有以下几种:使用for...in循环:Python循环遍历字典的方法有以下几种:1.使用for...in循环:pythondict={'name':'Tom','age':20,'gender':'male'}#遍历所有的键forkeyindict:print(key)#遍历所有的值forvalueindict.values......
  • python语言合法命名规则:my_first_python_program
    示例示例Python语言合法命名规则:命名只能使用字母、数字和下划线,不能使用其他符号;Python语言合法命名规则:1.命名只能使用字母、数字和下划线,不能使用其他符号;2.不能以数字开头;3.不能使用Python关键字;4.命名应该有意义,尽量不要使用缩写;5.命名应该具有可读性,尽量使用驼峰命名法,......
  • Python调用C动态库并通过bytes传参
    通过Python内建库ctypes调用C语言。#!/usr/bin/python3#file:bytes_test.pyimportctypesasctimportos#编译C程序为动态库os.system("gcc-fpic-sharedbytes_test.c-obytes_test.dll")#加载动态库clib=ct.CDLL("./bytes_test.dll")#分配内存src=b......