English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Aunque es fácil generar dibujos rápidamente usando el módulo matplotlib.pyplot, se recomienda usar el método orientado a objetos porque permite un mejor control y personalización de los dibujos. También se proporcionan la mayoría de las funciones en la clase matplotlib.axes.Axes.
La idea principal detrás de usar un método orientado a objetos más formal es crear un objeto gráfico y luego llamar solo a los métodos o propiedades de ese objeto. Este método ayuda a manejar mejor los lienzo que tienen múltiples dibujos.
En la interfaz orientada a objetos, Pyplot se utiliza solo para algunas funciones, como la creación de gráficos, la creación y el seguimiento explícito de objetos gráficos y ejes por parte del usuario. En este nivel, el usuario crea gráficos a través de los cuales se pueden crear uno o más objetos ejes. Luego, estos objetos ejes se utilizan para la mayoría de las operaciones de dibujo.
Primero, cree una instancia de gráfico que proporcione un lienzo vacío.
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 fig = plt.figure()
Agregar el eje al gráfico. El método add_axes() necesita un4un objeto lista de elementos, que corresponde a la izquierda, la parte inferior, el ancho y la altura del gráfico. Cada número debe estar entre 0 y1entre -
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 ax=fig.add_axes([0,0,1,1])
Configurar las etiquetas del eje x e y y el título -
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 ax.set_title("onda sinusoidal") ax.set_xlabel('angle') ax.set_ylabel('sine')
llame al método plot() del objeto axes.
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 ax.plot(x,y)
Si se utiliza Jupyter notebooksi es necesario, agregar la instrucción %matplotlib inline; la función show() del módulo pyplot muestra el gráfico.
Leer y ejecutar el siguiente código -
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 #! /usr/bin/env python #coding=utf-8 from matplotlib import pyplot as plt import numpy as np import math # Mostrar configuración de chino... plt.rcParams['font.sans']-fuente serif] = ['SimHei'] # Paso uno (reemplazo de sans)-fuente serif) plt.rcParams['axes.unicode_minus'] = False # Paso dos (solución al problema de visualización de números negativos en el eje de coordenadas) %matplotlib inline x = np.arange(0, math.pi*2, 0.05]) y = np.sin(x) fig = plt.figure() ax = fig.add_axes([0,0,1,1]) ax.plot(x,y) ax.set_title("Onda senoidal") ax.set_xlabel('Ángulo') ax.set_ylabel('Seno') plt.show()
El código de la línea superior genera la siguiente salida -
en Jupyter notebookdel código que se ejecuta en el entorno de ejecución similar -
# Nombre de archivo: example.py # Derechos de autor : 2020 Por w3codebox # Autor por: es.oldtoolbag.com # Fecha : 2020-08-08 #! /usr/bin/env python #coding=utf-8 from matplotlib import pyplot as plt import numpy as np import math # Mostrar configuración de chino... plt.rcParams['font.sans']-fuente serif] = ['SimHei'] # Paso uno (reemplazo de sans)-fuente serif) plt.rcParams['axes.unicode_minus'] = False # Paso dos (solución al problema de visualización de números negativos en el eje de coordenadas) %matplotlib inline x = np.arange(0, math.pi*2, 0.05]) y = np.sin(x) fig = plt.figure() ax = fig.add_axes([0,0,1,1]) ax.plot(x,y) ax.set_title("Onda senoidal") ax.set_xlabel('Ángulo') ax.set_ylabel('Seno') plt.show()
Mostrar salida como se muestra a continuación -