python - ¿Cómo cambiar el tamaño de fuente de la tabla con matplotlib.pyplot?
plot python 3 (2)
Estoy dibujando una tabla con pyplot como esta:
sub_axes.table(cellText=table_vals,
colWidths = [0.15, 0.25],
rowLabels=row_labels,
loc=''right'')
Me gustaría cambiar el tamaño de fuente del contenido de la tabla, y encontré que hay una propiedad de fontsize
, por favor ref la definición de ''tabla'' .
Entonces se convierte en:
sub_axes.table(cellText=table_vals,
colWidths = [0.15, 0.25],
rowLabels=row_labels,
fontsize=12,
loc=''right'')
Pero cuando ejecuto el código, recibí un error:
TypeError: table() got an unexpected keyword argument ''fontsize''
¿Esta propiedad está obsoleta? ¿Y cómo puedo cambiar el tamaño de fuente de la tabla con pyplot?
Creo que la documentación sugiere un parámetro-para-ser (el fontsize
notificación no es un enlace como los otros parámetros) o tal vez es un poco engañoso en este momento. No hay un parámetro fontsize
.
Buscando en el código fuente , encontré el método Table.set_fontsize
:
table = sub_axes.table(cellText=table_vals,
colWidths = [0.15, 0.25],
rowLabels=row_labels,
loc=''right'')
table.set_fontsize(14)
the_table.scale(1.5, 1.5) # may help
Aquí hay un ejemplo con un tamaño de letra extremadamente exagerado solo para mostrar el efecto.
import matplotlib.pyplot as plt
# Based on http://.com/a/8531491/190597 (Andrey Sobolev)
fig = plt.figure()
ax = fig.add_subplot(111)
y = [1, 2, 3, 4, 5, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1]
col_labels = [''col1'', ''col2'', ''col3'']
row_labels = [''row1'', ''row2'', ''row3'']
table_vals = [[11, 12, 13], [21, 22, 23], [31, 32, 33]]
the_table = plt.table(cellText=table_vals,
colWidths=[0.1] * 3,
rowLabels=row_labels,
colLabels=col_labels,
loc=''center right'')
the_table.set_fontsize(24)
the_table.scale(2, 2)
plt.plot(y)
plt.show()
Establezca el auto_set_font_size
en False
, luego set_fontsize(24)
the_table.auto_set_font_size(False)
the_table.set_fontsize(24)