¿Cómo puedo cambiar el tamaño de mi imagen para que sea adecuada para la impresión?
Por ejemplo, me gustaría utilizar papel A4, cuyas dimensiones son 11,7 pulgadas por 8,27 pulgadas en orientación horizontal.
También puede establecer el tamaño de la figura pasando el diccionario al parámetro rc
con la clave 'figure.figsize'en el método
set` de seaborn:
import seaborn as sns
sns.set(rc={'figure.figsize':(11.7,8.27)})
Otra alternativa puede ser utilizar figure.figsize
de rcParams
para establecer el tamaño de la figura como se indica a continuación:
from matplotlib import rcParams
# figure size in inches
rcParams['figure.figsize'] = 11.7,8.27
Se pueden encontrar más detalles en la documentación de matplotlib
Es necesario crear los objetos matplotlib Figure y Axes con antelación, especificando el tamaño de la figura:
from matplotlib import pyplot
import seaborn
import mylib
a4_dims = (11.7, 8.27)
df = mylib.load_data()
fig, ax = pyplot.subplots(figsize=a4_dims)
seaborn.violinplot(ax=ax, data=df, **violin_options)
Puedes establecer el contexto como poster
o establecer manualmente el fig_size
.
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
np.random.seed(0)
n, p = 40, 8
d = np.random.normal(0, 2, (n, p))
d += np.log(np.arange(1, p + 1)) * -5 + 10
# plot
sns.set_style('ticks')
fig, ax = plt.subplots()
# the size of A4 paper
fig.set_size_inches(11.7, 8.27)
sns.violinplot(data=d, inner="points", ax=ax)
sns.despine()
fig.savefig('example.png')