Cómo usar Python para dibujar gráficos de trabajos académicos
Hay varias formas de gráficos en el artículo. Las herramientas de procesamiento más utilizadas incluyen Excel, MATLAB y Python. El método de autoprocesamiento de Excel tiene dos defectos:
1. hay muchos datos, es fácil Aparece el fenómeno de los "ojos en blanco" de Excel;
2. Cuando necesite utilizar la función de subtrama o el procesamiento por lotes, es más conveniente utilizar MATLAB o Python. ;
3. La belleza de los gráficos procesados por Excel está a cierta distancia del estándar de los gráficos en papel. Comparando las funciones de trazado de MATLAB y Python, Python tiene una ligera ventaja desde el punto de vista estético del gráfico. La siguiente sección presenta brevemente el proceso de extracción de datos de Excel a Python y el uso de la biblioteca matplotlib de Python para dibujar gráficos.
1. Cómo importar datos de Excel a Python:
Esta sección presenta principalmente cómo importar datos de Excel a Python (los datos originales pueden estar en formato .txt o .out). archivo, y los datos son relativamente complejos, primero puede usar MATLAB o Python para procesar los datos y guardarlos en Excel, incluidos algunos cálculos simples, arreglos, etc., para facilitar el dibujo posterior, o usar Python directamente para extraer los datos en .txt, que no se discutirá aquí (introducción detallada), el método principal es usar la biblioteca xlrd de Python, el proceso es el siguiente:
# Importar biblioteca xlrd
importar. xlrd
# Leer el archivo Excel especificado (aquí está excel_dir)
data=xlrd.open_workbook(excel_dir)
# Leer los datos en una hoja (aquí nombre de hoja con nombre) en los datos especificados
table=data.sheet_by_name(nombre de hoja)
#Leer los datos de una determinada columna en la tabla
needs=table .col_values(0) Hay varias necesidades. Puntos de explicación:
1. ¿Cómo definir excel_dir y nombre de hoja?
excel_dir debe escribirse en el formato de una cadena (es decir, ' ' o " ") y debe terminar con un sufijo de Excel como .xls o .xlsx. Por ejemplo, lea el archivo denominado resultado. xls en el escritorio del administrador. El archivo se puede escribir como:
excel_dir = 'C:UsersAdministratorDesktop
esult.xls'data=xlrd.open_workbook(excel_dir)El método para definir el nombre de la hoja. es el mismo que el anterior Además, la hoja también tiene un método de lectura por orden de índice:
table = data.sheets()[0] #Obtener por orden de índice
table = data. .sheet_by_index(0) #Obtener por orden de índice 2. ¿Cómo leer los datos de una determinada celda o fila?
El proceso que se muestra es leer los datos de una determinada columna en una hoja de manera similar, los datos de una determinada fila son:
table.col_values(i) El comando a leer. los datos de una determinada celda son:
table.cell(i, j).value 3. Al leer una determinada fila o columna de datos, ¿cuál es el rango de los datos?
Por ejemplo: Cuando la tabla de una hoja sea la siguiente, se leerán los datos de la tabla 4×3.
Es decir, si desea leer los datos de la columna B, el código debe escribirse como
table.col_values(1) Nota: Python comienza a contar desde 0, por lo que el el número de columna debe ser 1. La información incluida en este momento es: [u'', u'', 4, u'']
Y tenga en cuenta que las dimensiones de la tabla están determinadas por cada hoja, y si una tabla de Excel tiene varias hojas, puede haber situaciones en las que las longitudes de las listas sean diferentes.
4. ¿Qué sucede si desea obtener de 2 a 5 filas de una determinada columna?
table.col_values(i)[1:5]5. Si desea obtener el último número, ¿cómo debe escribir el código?
Dado que los tipos de datos de cada fila/columna pueden ser diferentes, puede suceder que la primera columna solo tenga 4 números, la segunda columna tenga 9 números, y la columna más grande tenga 100 números, etc. Si usas directamente el comando para redondear la columna, u'' se mezclará en la lista, provocando errores en el siguiente dibujo. En este caso, puedes usar el siguiente método:
a_col=table.col_values. (i)
a=a_col[0, a_col.index(u'')] Sin embargo, debe tenerse en cuenta que este comando no se puede utilizar en columnas que controlan el número de filas, de lo contrario se producirá un error. ser reportado. Puede escribir otras declaraciones de juicio para identificar si se debe utilizar este comando.
2. Cómo usar Python para dibujar:
Aquí presentamos cómo usar la biblioteca matplotlib para dibujar. Primero debe importar la biblioteca matplotlib:
importar numpy como npimport matplotlib.pyplot como plt El método de dibujo es muy simple, el proceso general es el siguiente:
# Comando de dibujo, 1 es el número de figura y establece figsize
fig_drift = plt.figure(1, figsize= (12, 4))
# Establece las coordenadas de los datos en el eje x y el eje y, así como atributos como el color y la etiqueta Dos. aquí se utilizan conjuntos de datos
plt.plot( drift[0], story, "g-", label='$Damped$')
plt.plot(drift[ 1], story, "r-.", label='$Undamped$ ')
# Establece las etiquetas del eje x y del eje y
plt.xlabel( 'Drift')
plt.ylabel('Storey')
p># Seleccione la etiqueta del grupo de datos de visualización
plt.legend()
# Establece el intervalo y el rango del eje x y del eje y
plt xticks((0.000, 0.005, 0.010, 0.015))
plt.yticks. (range(1, 5, 1))
# Establecer el nombre de la imagen
plt.title('minor')
Algunos puntos que deben ser explicado:
1. ¿Cómo hacer varios dibujos?
Es muy simple, justo después de configurar el nombre del número de figura, inserte:
ax2 = plt.subplot(132)
plt.sca(ax2) El Los siguientes comandos son consistentes con lo anterior. Vale la pena mencionar que plt.subplot (131) se refiere a dibujar una imagen que contiene un subgrafo de 1 × 3, y ax1 representa la segunda imagen, mientras que plt.sca(ax2) indica que el subgrafo está seleccionado. .
2. ¿Cómo configurar el eje x, el eje y y otros comandos para determinar a qué gráfico se le asigna el atributo?
matplotlib asignará directamente este atributo al objeto de trazado anterior.
3. ¿Cómo dibujar un diagrama de dispersión?
Cambie pl.plot(x, y) a pl.plot(x, y, 'o').
4. Algunos otros parámetros de configuración:
# Establece los límites superior e inferior del eje x y del eje y
pl.xlim(i, j)
pl.ylim(m, n)
# Mostrar la imagen
pl.show()
# Guardar la imagen y guárdela automáticamente en formato png
plt.savefig(dir name.png, dpi=600) Además, también admite la configuración de la visualización de coordenadas del eje x (eje y) y el dibujo de gráficos circulares. , histogramas y otras funciones, que no se repetirán aquí.
3. Una pequeña digresión:
Una vez leí una frase: “No hay malas palabras en el mundo, sólo mala gente que las escribe”.
Cada idioma tiene sus propias ventajas y desventajas, por lo que no comentaré demasiado aquí. Cómo utilizamos el lenguaje para dibujar o lograr más es una cuestión de elección. El uso apropiado de for, def, class y otras declaraciones pueden hacer que un fragmento de código sea aún más poderoso. Lo escribo aquí como un recordatorio para mí: cuando encuentre un problema, primero aclare el método y forme un sistema antes de escribirlo. No utilice ciegamente un lenguaje aparentemente correcto. Reconstruido a la fuerza, la tasa de reelaboración es extremadamente alta.
Para obtener más artículos relacionados sobre cómo usar Python para dibujar gráficos de trabajos académicos, preste atención al sitio web chino de PHP.