Además de Pandas y Seaborn, también me gustaría brindarle una breve introducción a matplotlib. Matplotlib es otro módulo y biblioteca importante en Python. Se utiliza para la visualización de datos. El siguiente ejemplo de codificación lo ayudará a comenzar. La documentación completa sobre matplotlib está disponible aquí: https://matplotlib.org/index.html
# importar matplotlib, matplotlib.pyplot import matplotlib import matplotlib.pyplot as plt # importar pandas y numpy ya que queremos visualizar datos almacenados en marcos de datos import pandas import numpy # importar un conjunto de datos y mostrar el encabezado data_df = pandas.read_csv(" oica.csv",sep=",") data_df.head()
año | país | producción | |
---|---|---|---|
0 | 2018 | Argentina | 466649 |
1 | 2018 | Austria | 164900 |
2 | 2018 | Bélgica | 308493 |
3 | 2018 | Brasil | 2879809 |
4 | 2018 | Canadá | 2020840 |
# paso 1: crear la superficie, la figura; permite, por ejemplo, establecer el tamaño # la figura es como una página; una figura puede contener varias parcelas, es decir, ejes plt.figure(figsize=(10,10))
<Tamaño de figura 720x720 con 0 Ejes>
<Tamaño de figura 720x720 con 0 Ejes>
# .subplots() devuelve la figura y los ejes; # los ejes son las coordenadas base en las que trazas; # como se indicó, una figura puede contener varios ejes plt.figure(figsize=(10,10)) plt.subplots()
(<Tamaño de figura 432x288 con 1 eje>, <matplotlib.axes._subplots.AxesSubplot at 0x257b791bb08>)
<Tamaño de figura 720x720 con 0 Ejes>
# paso 2: trace un gráfico de puntos, es decir, un gráfico de dispersión; # agregar la trama al objeto de ejes plt.figure(figsize=(10,10)) plt.plot( numpy .sort(data_df["output "]),marker="o",markersize=2)
[<matplotlib.lines.Line2D en 0x257b6180108>]
# paso 3: agregue etiquetas de título y eje; # -- establece el tamaño de la figura plt.figure(figsize=(20,10)) # -- crea la trama plt.plot( numpy .sort(data_df["output "]), marcador="o", marcadortamaño=6, ancho de línea =2, linestyle ="--", color="orange") # -- set title plt.title("Cifras de producción anual de la industria automotriz", fontdict={"fontname":"Times New Roman", "fontsize" :32}) # -- asignar xlabel plt.xlabel("número de punto de datos.", fontdict={"fontname":"Comic Sans MS",
(matriz([-200., 0., 200., 400., 600., 800., 1000.]), <una lista de 7 objetos Text xticklabel>)
# una forma más estructurada de trabajar con matplotlib es trabajar con controladores de referencia # -- configurar algunos vectores de datos para graficar y1 = [1,2,3.3,5.1,7] y2 = [2,4,5,5.5, 5.75] x = range(0,len(y1)) # -- crea una imagen vacía (es decir, = figura); capturar un controlador fig = plt.figure() # fig indica que se trata de una "figura" # -- crea una trama secundaria en la imagen vacía, por ejemplo, la figura vacía; capturar un controlador hacha = plt.subplot() # hacha indica que se trata de un "eje"; los ejes son básicamente el gráfico #: crear diagramas de líneas en el eje, usando la referencia del controlador de ejes ax.plot(x, y1, label='$y1 = series 1, growing fast',color="black") color=" ax. set_title('Comparación de dos series temporales', fontsize=18, # -- agregar etiquetas de eje x e y, usando la referencia del controlador de ejes ax.set_xlabel("valores del eje x", fontsize=14, color="red") ax.set_ylabel("valores del eje y", fontsize=14, color= "púrpura") # -- agregar leyenda, por defecto dentro del marco de la trama ax.legend(fontsize=10) # -- agregar una cuadrícula ax.grid(b=True, color="blue", alpha=0.1) # -- muestra todo lo trazado en esta sección hasta este punto plt.show()
# veamos ahora algunos ejemplos adicionales; # por ejemplo, podemos hacer histogramas usando matplotlib # -- importar aleatorio para crear algunos números aleatorios importar aleatorio # -- usar randint() de aleatorio para crear algunos enteros aleatorios x = [] for i in range(0,100): x.append( random.randint(a=0,b=100)) # -- crea una figura fig = plt.figure(figsize=(10,10)) # -- añade ejes a la figura ax = plt.subplot() # -- agregue el histograma a los ejes, usando el controlador de objetos de los ejes ax.hist(x, bins=20, histtype="bar", color="pink") # -- agregue el título al histograma, usando el controlador de objetos de los ejes color="darkgreen") # -- agrega etiquetas a los ejes x e y, usando el controlador de objetos de ejes ax.set_xlabel("rango de valores de observación", fontsize=16, color="darkgreen") ax.set_ylabel("frecuencia absoluta", fontsize=16, color= "verde oscuro") # -- ajusta las etiquetas de marca x e y, usando el controlador de objetos de ejes # -- también: ajusta las marcas de los ejes x e y, usando el controlador de objetos de ejes ax.tick_params(axis="x", size=12, width =5, color="blue", labelsize=20, size=12, # -- muestra todo lo trazado en esta sección,hasta este punto plt.show()
# otro ejemplo: trazado de superficie 3D con matplotlib en Python # crédito: https://stackoverflow.com/questions/3810865/matplotlib-unknown-projection-3d-error # -- primero, algunos datos para trazar x = [1,2 ,3] y = [1,2,3] z = [[1,2,3], [1,2,3], [1,2,3]] # -- crear figura, usando pyplot fig = plt .figure(figsize=(10,10)) # -- creación de ejes, usando pyplot de mpl_toolkits.mplot3d import axes3d, Axes3D ax = Axes3D(fig) # -- creación de gráfico de superficie ax.contour(x,y,z,extend3d =Verdadero)
<matplotlib.contour.QuadContourSet en 0x257b7899f48>
Ingeniero industrial especializado en optimización y simulación (R, Python, SQL, VBA)
Leave a Reply