0% encontró este documento útil (0 votos)
13 vistas32 páginas

Proyecto - Numpy 2 en Python - Librerias - Usos - Ejemplos

Descripción básica del uso de Numpy 2 en lenguaje de programación de python y sus respectivos ejemplos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
13 vistas32 páginas

Proyecto - Numpy 2 en Python - Librerias - Usos - Ejemplos

Descripción básica del uso de Numpy 2 en lenguaje de programación de python y sus respectivos ejemplos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Programación Estructurada en Entorno Unix

24-04-2025

PYTHON 2

Integrantes:
Figueroa Pérez Saúl
Balderas Montes María del Pilar
Bautista Osorio Guadalupe
NumPy es un proyecto de código abierto que permite la computación
numérica con Python. Fue creado en 2005, basándose en los primeros
trabajos de las bibliotecas Numeric y Numarray. NumPy siempre será un
software 100 % de código abierto y de uso gratuito. Se publica bajo los
términos liberales de la licencia BSD modificada.

NumPy se desarrolla de forma abierta en GitHub, gracias al consenso de


NumPy y de la comunidad científica de Python en general. Para obtener más
información sobre nuestro enfoque de gobernanza, consulte nuestro
Documento de Gobernanza.

Operaciones con vectores


Numpy incorpora funciones para realizar las principales operaciones
algebraicas con vectores. La mayoría de los métodos algebráicos se
agrupan en el submódulo linalg.
Producto escalar de dos vectores: Para realizar el producto escalar de
dos vectores se utiliza el operador @ o el siguiente método:

Módulo de un vector: Para calcular el módulo de un vector se utiliza el


siguiente método:

Operaciones con matrices


Numpy incorpora funciones para realizar las principales operaciones
algebraicas con matrices. La mayoría de los métodos algebráicos se
agrupan en el submódulo linalg.
Producto de dos matrices: Para realizar el producto matricial se
utiliza el mismo operador @ y método que para el producto escalar de
vectores:
Matriz traspuesta: Para trasponer una matriz se utiliza el método

Traza de una matriz: La traza de una matriz cuadrada se calcula con el


siguiente método:

Determinante de una matriz: El determinante de una matriz cuadrada


se calcula con la siguiente función:

Matriz inversa: La inversa de una matriz se calcula con la siguiente


función:

Autovalores de una matriz: Los autovalores de una matriz cuadrada se


calculan con la siguiente función:
Autovectores de una matriz: Los autovectores de una matriz cuadrada
se calculan con la siguiente función:

Solución de un sistema de ecuaciones: Para resolver un sistema de


ecuaciones lineales se utiliza la función siguiente:

Arreglos Enmascarados
Las máscaras booleanas son arrays de valores True y False que se usan para
filtrar datos en arrays de NumPy. Nos permiten seleccionar, modificar o
ignorar elementos que cumplan (o no) ciertas condiciones. Se usan para
seleccionar solo ciertos elementos de un array, aplicar operaciones
condicionales e ignorar datos no deseados de manera eficiente. Un ejemplo
básico es:

mask será:

hay dos formas de usar una máscara:


Multiplicación por la máscara:

True se comporta como 1, False como 0.


Los valores que no cumplen la condición se vuelven 0.
Indexación booleana:

Devuelve un array solo con los elementos donde mask es True.


Es más útil si queremos trabajar solo con los datos que nos interesan.
En condiciones combinadas en Arrays 2D: se pueden aplicar condiciones a
varias columnas a la vez:

Si se quiere que solo se cumpla una condición:

Los Arrays Enmascarados (numpy.ma)


Permiten ignorar valores sin eliminarlos.
Muy útil en operaciones estadísticas (media, suma, etc.).

visualización del array enmascarado

Las funciones útiles del módulo ma son:


ma.masked_where(condición, array)
ma.masked_greater(array, valor)
ma.masked_inside(array, [min, max])

Funciones Universales
Las funciones universales en NumPy son aquellas que operan sobre uno o
más arreglos, realizando operaciones elemento por elemento y generando
como resultado un nuevo arreglo o un escalar. Y si accedemos a la
documentación de la librería podremos encontrar que existen !más de 60
funciones universales!

Regresion Lineal
La regresión lineal es una herramienta estadística fundamental para
modelar la relación entre una variable dependiente y una o más variables
independientes. Se utiliza ampliamente en ciencia de datos y aprendizaje
automático para predecir resultados y comprender las relaciones entre
variables. En Python, implementar la regresión lineal puede ser sencillo
con la ayuda de bibliotecas de terceros como scikit-learn y statsmodels.
La regresión lineal simple es la forma más básica de regresión lineal.
Usa una sola variable independiente (𝑥) para predecir una variable
dependiente (𝑦).
Se parte de un conjunto de observaciones (x, y), que son los datos reales
(representados como círculos verdes).
La función de regresión estimada tiene la forma:
𝑓(𝑥) = 𝑏₀ + 𝑏₁𝑥
𝑏₀: Intercepto (valor de 𝑓(𝑥) cuando 𝑥 = 0)
𝑏₁: Pendiente (indica cuánto cambia 𝑦 por cada unidad que cambia
𝑥)
Los valores predichos (puntos en la recta, mostrados como cuadrados
rojos) se obtienen usando esa fórmula.
Residuos: Son las diferencias entre los valores reales y los predichos
Residuo = 𝑦ᵢ - 𝑓(𝑥ᵢ) = 𝑦ᵢ - 𝑏₀ - 𝑏₁𝑥ᵢ
El objetivo de la regresión lineal es ajustar la recta para que esos
residuos (diferencias) sean lo más pequeños posible, es decir, minimizar
el error entre lo real y lo predicho.
SymPy es una biblioteca de Python para matemáticas simbólicas. Su
propósito es llegar a ser un sistema de álgebra por computadora (CAS)
completo manteniendo el código tan simple como sea posible para poder
ser legible y extensible de manera fácil. SymPy está escrito en Python
enteramente.

Símbolos
Símbolo es la clase más importante de la biblioteca symPy. Como se
mencionó anteriormente, los cálculos simbólicos se realizan con símbolos.
Las variables de SymPy son objetos de la clase Símbolos.

El argumento de la función Symbol() es una cadena que contiene un símbolo


y que puede asignarse a una variable.

SymPy también cuenta con la función Symbols() que permite definir varios
símbolos a la vez. La cadena contiene los nombres de las variables
separados por coma o espacio.
Los símbolos indexados se pueden definir con una sintaxis similar a la de
la función range(). Los rangos se indican con dos puntos. El tipo de rango se
determina por el carácter a la derecha de los dos puntos. Si itr es un dígito,
todos los dígitos contiguos a la izquierda se toman como el valor inicial no
negativo. Todos los dígitos contiguos a la derecha se toman como 1 mayor
que el valor final.
Tipos numéricos
SymPy define tres tipos numéricos: Real, Racional y Entero.
La clase Racional representa un número racional como una pareja de
números Enteros: el numerador y el denominador, de esta forma
Rational(1,2) representa 1/2, Rational(5,2) 5/2, etcétera
SymPy usa mpmath en segundo plano (background), lo que hace posible ejecutar
cálculos usando aritmética con precisión arbitraria. De esta forma, algunas
constantes especiales como e, pi, oo (Infinito), son tratadas como símbolos y
pueden ser evaluadas con precisión arbitraria.

como puedes ver, evalf evalua la expresión como un número decimal.


También existe una clase para representar el infinito (matemático) llamada oo

Ecuaciones lineales
SymPy es capaz de resolver ecuaciones algebraicas de una o varias variables

Como has visto anteriormente, toma una expresión como primer argumento que
se supone que es igual a 0. Es capaz de resolver una gran parte de ecuaciones
polinómicas. Además, es capar de resolver múltiples ecuaciones respecto a
múltiples variables (sistemas de ecuaciones) proporcionando una tupla como
segundo argumento

Otra alternativa, en el caso de ecuaciones polinómicas, es factor. factor


devuelve el polinomio factorizado en términos irreducibles y es capaz de
calcular la factorización sobre varios dominios
Ecuaciones no lineales

En SymPy, las ecuaciones no lineales pueden resolverse utilizando la función


solve. Se define la ecuación, la variable a resolver y se llama a solve para
obtener las soluciones. Si la ecuación no tiene solución simbólica, SymPy
puede proporcionar soluciones numéricas.
Pasos para resolver ecuaciones no lineales en SymPy:
Importar SymPy:

Definir la variable simbólica:

Definir la ecuación:

Resolver la ecuación:

Imprimir las soluciones:

Consideraciones:
Soluciones simbólicas vs. numéricas:
solve intenta encontrar soluciones simbólicas exactas. Si no las
encuentra, puede intentar encontrar soluciones numéricas. Para obtener
soluciones numéricas, se puede usar nsolve.
Sistemas de ecuaciones:
Para resolver sistemas de ecuaciones no lineales, se puede pasar una lista
de ecuaciones y una lista de variables a solve.
Restricciones:
En algunos casos, las soluciones pueden estar restringidas a un cierto
dominio o tipo de números (reales, complejos, etc.). Se pueden usar
argumentos adicionales en solve para especificar estas restricciones
En este ejemplo, el código resuelve un sistema de ecuaciones no lineales
donde la primera ecuación representa un círculo y la segunda una línea
recta. La solución devuelve las coordenadas de los puntos de intersección
de la línea recta con el círculo.

Aunque una expresión coloquial común es, por ejemplo, " resolver una
integral ", en la terminología de SymPy sería " evaluar una integral ". Esta
página no proporciona orientación para estas tareas. Busque en la
documentación el tipo de expresión que desea evaluar.
Diferenciación e Integración

Límites
Los límites son fáciles de usar en SymPy, siguen la sintáxis
limit(función, variable, punto).
Así, para calcular el límite de f(x) como x -> 0, deberías usar la siguiente
expresión limit(f(x), x, 0).
Por ejemplo, si se quiere calcular el siguiente límite:

Tendríamos que hacer lo siguiente:

Para calcular limites laterales debe pasarse un cuarto argumento, por


ejemplo:

El símbolo + denota el cálculo de un límite lateral por la derecha y el


símbolo - un límite lateral por la izquierda.
Para calcular límites cuando la variable tiende a infinito podemos utilizar
oo para especificarlo. Por ejemplo, vamos a calcular el siguiente límite:

Derivadas
Las derivadas en Python se calculan utilizando la función diff(func, var),
misma que en su forma más simple espera al menos dos argumentos: una
expresión algebraica y una variable respecto a la cual derivar. Por ejemplo:
Derivación implícita

Existen funciones en las que no pueden expresarse explícitamente una


variable en términos de la otra, y en su lugar se define una relación
implícita entre las variables. Por ejemplo, la siguiente es una función
definida implícitamente:

Para derivarla utilizamos el método de derivación implícita, el cual consiste


en:
1. Derivar ambos lados de la ecuación con respecto a x, considerando que
y=y(x)
2. Resolver la ecuación que resulta para dy/dx.
Podemos implementar esto en SymPy de la siguiente manera:

Integrales
Para calcular integrales vamos a utilizar la función integrate, la cual
acepta al menos dos argumentos: la función a integrar y la variable con
respecto a la cual se integra, ofrece soporte para integrales definidas o
indefinidas de funciones transcendentes elementales y de funciones
especiales , que usa una potente extensión del algoritmo Risch-Norman y
algo de heurística y de reconocimiento de patronespor ejemplo:

Esta instrucción calcula la integral:

Note que la expresión algebraica devuelta por Python no contiene la


constante de integración, por default SymPy no la considera. Sí en algún
caso específico necesita a la constante de integración puede adicionarla
manualmente.
Las integrales definidas se pueden calcular si el segundo argumento se hace
una tupla de la forma (variable, a, b), donde a y b indican el límite inferior y
superior a evaluar en la integral. Por ejemplo, para calcular:
Ecuaciones diferenciales ordinarias
Una ecuación diferencial es cualquier ecuación que contiene las derivadas
de una o más variables dependientes con respecto a una o más variables
independientes. Las ecuaciones diferenciales son fundamentales en
ingeniería, para modelar una amplia variedad de fenómenos físicos.
Si una ecuación diferencial contiene únicamente derivadas ordinarias de una
o más variables dependientes con respecto a una sola variable
independiente, se dice que es una ecuación diferencial ordinaria (EDO). A
continuación se muestran ejemplos de EDO:

Una ecuación diferencial ordinaria en el caso más general tendrá términos


que dependen de la función, sus derivadas, la variable independiente y
constantes. Por ejemplo, observa la siguiente EDO de primer orden:

El término sin⁡(x) depende de la variable independiente x, y es la función


y(x) y dy/dx su derivada de primer orden. En SymPy, para definir la variable
independiente utilizamos symbols, sin embargo, para crear y(x) debemos
utilizar Function para indicar que estamos creando una función que
depende de una variable, así pues:

Para definir la derivada de primer orden de y podemos utilizar el método


diff:

Para escribir la ecuación diferencial completa utilizamos la clase Eq:


Las derivadas de orden superior se pueden definir utilizando también diff,
pero agregando el argumento correspondiente al orden de la derivada, por
ejemplo, para la derivada de segundo orden:

Vamos a suponer que queremos definir la siguiente ecuación diferencial de


segundo orden:

La función x se puede crear sin indicar explícitamente la variable de la cual


depende, por ejemplo:

Para poder utilizar la función x(t) tendríamos que pasarle como argumento
la variable independiente, es decir:

De tal manera que la EDO de segundo orden anterior podríamos definirla


como sigue:

La función dsolve
Utilizando SymPy podemos resolver varios tipos de ecuaciones
diferenciales. Para la mayoría de estos casos trabajaremos con la función
dsolve, la cual se utiliza para resolver cualquier tipo (soportado) de EDO. La
sintaxis más básica es:
dsolve(eq, f)
Siendo eq una expresión de la clase Equality, o bien, una expresión que
se asume está igualada a cero. En ambos casos, se considera que este
argumento contiene la descripción de la EDO.
f es la función con respecto a la cual se resuelve la ecuación diferencial;
y en general, es un objeto de la clase Function
Para resolver problemas de valor inicial (PVI) podemos agregar el argumento
ics a la función:
Siendo ICS un diccionario que contiene las condiciones iniciales en la
forma:

EDO de primer orden


Una ecuación diferencial ordinaria de primer orden tiene la siguiente forma
general:

Podemos utilizar dsolve para resolver EDO de este tipo. Por ejemplo, vamos a
encontrar la solución para la siguiente EDO de primer orden:

La variable independiente es x y la función es y, entonces:


Scipy es el paquete científico (es decir, un módulo que tiene otros
módulos) más completo, que incluye interfases a librerías científicas muy
conocidas como LAPACK, BLAS u ODR entre muchas otras. Algunos de sus
módulos al importarla son:

Integración numérica

SciPy ofrece herramientas potentes para la integración numérica a través


del módulo scipy.integrate. Este módulo proporciona varias funciones
para calcular integrales numéricamente:
quad: Para integrales simples (unidimensionales)
dblquad, tplquad: Para integrales dobles y triples
nquad: Para integrales múltiples
odeint, solve_ivp: Para resolver ecuaciones diferenciales ordinarias
Ejemplo básico de integración con quad:

Búsqueda de raíces

El módulo scipy.optimize contiene funciones para encontrar raíces de


ecuaciones:
root: Encuentra raíces de sistemas de ecuaciones
root_scalar: Encuentra raíces de funciones escalares
fsolve: Una interfaz más antigua para encontrar raíces

Ejemplo de búsqueda de raíces:

Ajuste de curvas
SciPy permite ajustar datos a modelos matemáticos mediante:
curve_fit: Ajusta una función a datos usando mínimos cuadrados
leastsq: Solucionador de mínimos cuadrados más general

Ejemplo de ajuste de curvas:


Interpolación

El módulo interpolate contiene rutinas de interpolación basadas en la


conocida librería FITPACK en Fortran; resulta muy útil en partes de datos
donde no hay suficientes medidas. Los interpoladores funcionan creando una
función interpoladora de orden predefinido, usando los datos de medidas.
Luego se aplica esta función de interpolación a un array de datos más denso
que la muestre.
El módulo scipy.interpolate ofrece métodos para interpolar datos:
interp1d: Interpolación unidimensional
splrep, splev: Interpolación con splines
griddata: Interpolación para datos multidimensionales

Ejemplo de interpolación: La clase scipy.interpolate


puede construir una función de
interpolación lineal
La instancia
scipy.interpolate.linear_inte
rp puede evaluarlo para un
tiempo requerido
La interpolación cúbica puede
seleccionarse al proporcionar
al argumento opcional la
palabra clave kind
Los resultados se muestran en
la siguiente figura
Transformada de Fourier

El módulo scipy.fft (en versiones más recientes) o scipy.fftpack (en


versiones anteriores) implementa algoritmos para calcular transformadas de
Fourier:

fft, ifft: Transformada de Fourier y su inversa


fft2, ifft2: Transformada de Fourier 2D
fftshift: Reorganiza resultados de la FFT

Ejemplo:

El observador no conoce la frecuencia de la señal, sólo el paso de tiempo


de muestreo de la señal sig. La señal se supone que procede de una función
real para la cual la transformada de Fourier será simétrica. La función
scipy.fftpack.fftfreq() genera las frecuencias de muestreo y
scipy.fftpack.fft() calcula la transformada rápida de Fourier.
Debido a que la
potencia resultante
es simétrica, sólo la
parte positiva del
espectro es
utilizada para
encontrar la
frecuencia
La frecuencia de la señal se puede encontrar:
Librería de Python especializada en el manejo y análisis de estructuras de
datos.

Las principales características de esta librería son:


Define nuevas estructuras de datos basadas en los arrays de la
librería NumPy pero con nuevas funcionalidades.
Permite leer y escribir fácilmente ficheros en formato CSV, Excel y
bases de datos SQL.
Permite acceder a los datos mediante índices o nombres para filas y
columnas.
Ofrece métodos para reordenar, dividir y combinar conjuntos de
datos.
Permite trabajar con series temporales.
Realiza todas estas operaciones de manera muy eficiente.

Pandas dispone de tres estructuras de datos diferentes:


Series

Las Series son arrays unidimensionales etiquetados capaces de contener


cualquier tipo de datos:
Son como diccionarios con índices ordenados
Pueden ser creadas desde listas, diccionarios o arrays
Permiten operaciones vectorizadas

Ejemplo:

Ejemplo. La siguiente serie contiene las asignaturas de un curso.


Las siguientes funciones permiten resumir varios aspectos de una serie:
s.count() : Devuelve el número de elementos que no son nulos ni NaN
en la serie s.
s.sum() : Devuelve la suma de los datos de la serie s cuando los datos
son de un tipo numérico, o la concatenación de ellos cuando son del
tipo cadena str.
s.cumsum() : Devuelve una serie con la suma acumulada de los datos
de la serie s cuando los datos son de un tipo numérico.
s.value_counts() : Devuelve una serie con la frecuencia (número de
repeticiones) de cada valor de la serie s.
s.min() : Devuelve el menor de los datos de la serie s.
s.max() : Devuelve el mayor de los datos de la serie s.
s.mean() : Devuelve la media de los datos de la serie s cuando los
datos son de un tipo numérico.
s.var() : Devuelve la varianza de los datos de la serie s cuando los
datos son de un tipo numérico.
s.std() : Devuelve la desviación típica de los datos de la serie s
cuando los datos son de un tipo numérico.
s.describe(): Devuelve una serie con un resumen descriptivo que
incluye el número de datos, su suma, el mínimo, el máximo, la media,
la desviación típica y los cuartiles.

Ejemplo de series usando los aspectos encontrados:


DataFrames
Los DataFrames son estructuras bidimensionales similares a tablas:
Contienen datos heterogéneos organizados en columnas
Cada columna puede tener un tipo de dato diferente
Incluyen índices tanto para filas como para columnas
Ejemplo:
Ejemplo. El siguiente DataFrame contiene información sobre los alumnos
de un curso. Cada fila corresponde a un alumno y cada columna a una
variable.

Al igual que para las series, los siguientes métodos permiten resumir la
información de un DataFrame por columnas:
df.count() : Devuelve una serie con el número de elementos que no son
nulos ni NaN en cada columna del DataFrame df.
df.sum() : Devuelve una serie con la suma de los datos de las columnas
del DataFrame df cuando los datos son de un tipo numérico, o la
concatenación de ellos cuando son del tipo cadena str.
df.cumsum() : Devuelve un DataFrame con la suma acumulada de los
datos de las columnas del DataFrame df cuando los datos son de un tipo
numérico.
df.min() : Devuelve una serie con los menores de los datos de las
columnas del DataFrame df.
df.max() : Devuelve una serie con los mayores de los datos de las
columnas del DataFrame df.
df.mean() : Devuelve una serie con las medias de los datos de las
columnas numéricas del DataFrame df.
df.var() : Devuelve una serie con las varianzas de los datos de las
columnas numéricas del DataFrame df.
df.std() : Devuelve una serie con las desviaciones típicas de los datos
de las columnas numéricas del DataFrame df.
df.cov() : Devuelve un DataFrame con las covarianzas de los datos de
las columnas numéricas del DataFrame df.
df.corr() : Devuelve un DataFrame con los coeficientes de correlación de
Pearson de los datos de las columnas numéricas del DataFrame df.
df.describe(include = tipo) : Devuelve un DataFrame con un resumen
estadístico de las columnas del DataFrame df del tipo tipo. Para los
datos numéricos (number) se calcula la media, la desviación típica, el
mínimo, el máximo y los cuartiles. Para los datos no numéricos (object)
se calcula el número de valores, el número de valores distintos, la moda
y su frecuencia. Si no se indica el tipo solo se consideran las columnas
numéricas.
Ejemplo usando todos los metodos encontrados para un DataFrame:
Objetos indexados
Pandas utiliza estructuras de índices para facilitar la manipulación de
datos:
Los índices pueden ser numéricos, fechas, strings, o multinivel
Permiten alineación automática basada en etiquetas
Facilitan selección, filtrado y reordenamiento de datos

Ejemplo:

Panel Data
Aunque en versiones más recientes de Pandas se ha deprecado la estructura
Panel en favor de DataFrames con MultiIndex, el concepto de datos de panel
sigue siendo importante:
Representan datos tridimensionales (ítems, fechas, columnas)
Útiles para series temporales, datos financieros, etc.
En Pandas moderno se implementan usando DataFrames con índice
multinivel
Ejemplo usando DataFrame con MultiIndex:
Es una librería Python open source, desarrollada inicialmente por el
neurobiólogo John Hunter en 2002. El objetivo era visualizar las señales
eléctricas del cerebro de personas epilépticas. Para conseguirlo, quería
replicar las funcionalidades de creación gráfica de MATLAB con Python.
Tras el fallecimiento de John Hunter en 2012, Matplotlib ha sido mejorado
a lo largo del tiempo por numerosos contribuidores de la comunidad open
source. Se ha utilizado para crear gráficas y diagramas de gran calidad.
Por ejemplo, es posible crear ​trazados, histogramas, diagramas de barra
y cualquier tipo de gráfica con ayuda de algunas líneas de código. Se
trata de una herramienta muy completa, que permite generar
visualizaciones de datos muy detalladas.

Formato básico de figuras y subfiguras


Matplotlib es la biblioteca de visualización
más utilizada en Python, permitiendo crear
gráficos estáticos, interactivos y animados de
alta calidad.
Figuras y ejes:
Una figura (Figure) es el contenedor
principal que alberga todos los elementos.
Los ejes (Axes) son donde se dibuja
propiamente el gráfico.
Por ejemplo
Subfiguras: Matplotlib permite crear múltiples gráficos en una sola figura:

Histogramas
hist(x, bins): Dibuja un histograma con las frecuencias resultantes de
agrupar los datos de la lista x en las clases definidas por la lista bins.

Graficación de funciones

Para graficar funciones en Matplotlib, se utiliza el módulo pyplot,


generalmente importado como plt. Primero, se definen los valores de x y
los valores de y correspondientes a la función que se quiere graficar. Luego,
se utiliza la función plot(x, y) para crear el gráfico. Se pueden personalizar
los gráficos con diferentes estilos de línea, colores, marcadores, etiquetas
y títulos. Finalmente, se muestra el gráfico con plt.show().

Ejemplo:
Explicación:
Se definen tres funciones diferentes: una cuadrática (x^2), una
trigonométrica (sin(x)) y una exponencial (exp(-x^2/2)).
Cada función se dibuja con plt.plot() con su propia etiqueta en formato
LaTeX (indicado por los símbolos $).
plt.legend() muestra la leyenda con las etiquetas de cada función.
plt.grid(True) añade una cuadrícula al gráfico.
plt.axhline() y plt.axvline() dibujan líneas horizontales y verticales en
y=0 y x=0 respectivamente, creando los ejes cartesianos.

Graficación de mapas

Matplotlib ofrece herramientas para la visualización de datos


geoespaciales, especialmente a través de su extensión Basemap o usando
librerías complementarias como Cartopy:
Explicación:
from mpl_toolkits.basemap import Basemap importa la extensión
Basemap para crear mapas.
m = Basemap(...) crea un objeto de mapa con:
projection='mill': proyección cartográfica de Miller
llcrnrlat/lon: coordenadas de la esquina inferior izquierda (lower left
corner)
urcrnrlat/lon: coordenadas de la esquina superior derecha (upper right
corner)
resolution='c': resolución "cruda" (c=crude, l=low, i=intermediate,
h=high, f=full)
m.drawcoastlines(), m.drawcountries(), etc., añaden características al
mapa.
m.fillcontinents() colorea los continentes y lagos.
m.drawmapboundary() dibuja el límite del mapa y lo rellena.

Mapa de contorno

Matplotlib permite al usuario generar distintos mapas ya sean de contorno


o entorno usando la misma función pero distinta estructura.
Explicación:
lons = np.linspace(-180, 180, 72) y lats = np.linspace(-90, 90, 36) crean
arrays de longitudes y latitudes.
lons, lats = np.meshgrid(lons, lats) genera una malla de coordenadas.
data = np.cos(np.radians(lats)) + np.sin(np.radians(lons)) crea datos
simulados que varían según latitud y longitud.
x, y = m(lons, lats) convierte coordenadas geográficas a coordenadas del
mapa.
cs = m.contourf(x, y, data, cmap='jet') crea un mapa de contorno relleno
con el esquema de colores 'jet'.
plt.colorbar() añade una barra de color para interpretar los valores.

Graficación en 3D
Ahora podemos crear la gráfica de superficie 3D. Comenzamos creando una
figura y agregando un subgráfico con el argumento proyección='3d'. Luego,
utilizamos la función plot_superficie() para representar la superficie con
los datos que creamos en el paso anterior.
Explicación:
Se generan cinco arrays aleatorios:
xs, ys, zs: coordenadas de los puntos
colors: valores para codificar los colores
sizes: tamaños de los puntos
scatter = ax.scatter(...) crea un gráfico de dispersión 3D donde:
c=colors: determina el color de cada punto según el mapa de colores
s=sizes: determina el tamaño de cada punto
alpha=0.6: nivel de transparencia
cmap='viridis': esquema de colores utilizado
plt.colorbar(scatter) añade una barra de color que relaciona valores con
colores.
Referencias
Alberca, A. S. (2022, 14 junio). La librería Pandas | Aprende con Alf.
Aprende Con Alf.
https://aprendeconalf.es/docencia/python/manual/pandas/
1.5. Scipy: computación científica de alto nivel — Scipy lecture notes. (s.
f.). https://claudiovz.github.io/scipy-lecture-notes-ES/intro/scipy.html
Alberca, A. S. (2020, 4 octubre). La librería Matplotlib | Aprende con Alf.
Aprende Con Alf.
https://aprendeconalf.es/docencia/python/manual/matplotlib/
3.1. Sympy : Matemáticas simbólicas en Python — Scipy lecture notes. (s.
f.). https://claudiovz.github.io/scipy-lecture-notes-
ES/packages/sympy.html#limites
12. Sympy: un sistema de álgebra computacional — Python para
Ingenieros. (s. f.). https://jorgedelossantos.github.io/apuntes-
python/SymPy.html#calculo-diferencial-e-integral

También podría gustarte