Personalizar el estilo de texto en gráficos de Matplotlib

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderemos a controlar el estilo de texto y etiquetas en un gráfico de Matplotlib utilizando un diccionario. Al crear un diccionario de opciones, podemos compartir parámetros entre múltiples objetos de texto y etiquetas. Esto nos permitirá personalizar fácilmente la familia de fuentes, el color, el grosor y el tamaño del texto en nuestros gráficos.

Consejos sobre la VM

Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje sus comentarios después de la sesión y lo resolveremos rápidamente para usted.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) matplotlib(("Matplotlib")) -.-> matplotlib/BasicConceptsGroup(["Basic Concepts"]) matplotlib(("Matplotlib")) -.-> matplotlib/PlottingDataGroup(["Plotting Data"]) matplotlib(("Matplotlib")) -.-> matplotlib/PlotCustomizationGroup(["Plot Customization"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("Importing Matplotlib") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("Understanding Figures and Axes") matplotlib/PlottingDataGroup -.-> matplotlib/line_plots("Line Plots") python/DataStructuresGroup -.-> python/tuples("Tuples") python/DataStructuresGroup -.-> python/dictionaries("Dictionaries") matplotlib/PlotCustomizationGroup -.-> matplotlib/titles_labels("Adding Titles and Labels") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/DataScienceandMachineLearningGroup -.-> python/numerical_computing("Numerical Computing") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("Data Visualization") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} matplotlib/figures_axes -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} matplotlib/line_plots -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} python/tuples -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} python/dictionaries -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} matplotlib/titles_labels -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} python/importing_modules -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} python/numerical_computing -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} python/data_visualization -.-> lab-48983{{"Personalizar el estilo de texto en gráficos de Matplotlib"}} end

Importar las bibliotecas necesarias

Comenzaremos importando las bibliotecas necesarias para este tutorial. Utilizaremos Matplotlib y NumPy.

import matplotlib.pyplot as plt
import numpy as np

Definir el diccionario de fuentes

A continuación, definiremos el diccionario de fuentes que contendrá las opciones de estilo para nuestro texto y etiquetas. En este ejemplo, estableceremos la familia de fuentes en 'serif', el color en 'darkred', el grosor en 'normal' y el tamaño en 16.

font = {'family': 'serif',
        'color':  'darkred',
        'weight': 'normal',
        'size': 16,
        }

Crear el gráfico

Ahora, podemos crear nuestro gráfico. Generaremos algunos datos utilizando NumPy y graficaremos una curva de decaimiento exponencial amortiguado.

x = np.linspace(0.0, 5.0, 100)
y = np.cos(2*np.pi*x) * np.exp(-x)

plt.plot(x, y, 'k')

Personalizar el título

Podemos personalizar el título de nuestro gráfico utilizando el diccionario de fuentes que definimos anteriormente. Estableceremos el parámetro fontdict de la función title() en nuestro diccionario de fuentes.

plt.title('Damped Exponential Decay', fontdict=font)

Agregar texto al gráfico

Podemos agregar texto a nuestro gráfico utilizando la función text(). En este ejemplo, agregaremos una expresión LaTeX al gráfico utilizando el diccionario de fuentes para personalizar el estilo.

plt.text(2, 0.65, r'$\cos(2 \pi t) \exp(-t)$', fontdict=font)

Personalizar las etiquetas de los ejes

También podemos personalizar las etiquetas de los ejes de nuestro gráfico utilizando el diccionario de fuentes. Estableceremos el parámetro fontdict de las funciones xlabel() e ylabel() en nuestro diccionario de fuentes.

plt.xlabel('Time (s)', fontdict=font)
plt.ylabel('Voltage (mV)', fontdict=font)

Ajustar el espaciado

Finalmente, podemos ajustar el espaciado de nuestro gráfico para evitar que se recorte la etiqueta del eje y. Utilizaremos la función subplots_adjust() para ajustar el margen izquierdo.

plt.subplots_adjust(left=0.15)

Resumen

En este laboratorio, aprendimos cómo controlar el estilo de texto y etiquetas en un gráfico de Matplotlib utilizando un diccionario. Al crear un diccionario de fuentes, podemos personalizar fácilmente la familia de fuentes, el color, el grosor y el tamaño del texto en nuestros gráficos. Utilizamos esta técnica para personalizar el título, el texto y las etiquetas de los ejes de nuestro gráfico, y ajustamos el espaciado para evitar que se recorte la etiqueta del eje y.