example - subplot title python
Python nacido en el mar para restablecer de nuevo a la matplotlib (4)
Estoy usando la versión o.4 de seaborn y la versión 1.42 de matplotlib. Tengo un gráfico que muestra tanto la línea como el marcador a través del comando plot simple, por ejemplo.
plt.plot([1,5,3,8,4],''-bo'');
Debido a un error potencial ( https://github.com/mwaskom/seaborn/issues/344 ), después de la importación seaborn, el mismo código muestra la línea solo sin marcador.
import seaborn as sb
plt.plot([1,5,3,8,4],''-bo'');
Así que mi pregunta es: después de la importación marítima, ¿hay una manera de restablecer todos los parámetros de nuevo a original?
Para actualizar los efectos secundarios de la configuración de Matplotlib que se encuentran a menudo con Seaborn:
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn.apionly as sns
Ejecuta esto:
import importlib
importlib.reload(mpl); importlib.reload(plt); importlib.reload(sns)
Para el antiguo código Python2:
import imp
imp.reload(mpl); imp.reload(plt); imp.reload(sns)
Nota: ninguno de los siguientes restaura correctamente el estado de matplotlib:
- sns.reset_orig ()
- sns.reset_defaults ()
- mpl.rcParams.update (mpl.rcParamsDefault)
Puede guardar los rcParams
que desee, antes de cambiar el estilo con Seaborn (tenga en cuenta que Seaborn ya no cambia los rcParams
al importar):
import matplotlib as mpl
my_params = mpl.rcParams
# apply some change to the rcparams here
mpl.rcParams.update(my_params)
Tenga en cuenta que tanto estos
mpl.rcParams.update(mpl.rcParamsOrig)
mpl.rcParams.update(mpl.rcParamsDefault)
restaura casi todos los rcParams
a su valor predeterminado. Los pocos que serán diferentes se pueden ver fácilmente (ejecuté esto en un cuaderno Jupyter):
# Differences between current params and `Default`
for key in mpl.rcParamsDefault:
if not mpl.rcParamsDefault[key] == mpl.rcParams[key]:
print(key, mpl.rcParamsDefault[key], mpl.rcParams[key])
## backend agg module://ipykernel.pylab.backend_inline
## figure.dpi 100.0 72.0
## figure.edgecolor w (1, 1, 1, 0)
## figure.facecolor w (1, 1, 1, 0)
## figure.figsize [6.4, 4.8] [6.0, 4.0]
## figure.subplot.bottom 0.11 0.125
y
# Differences between `Default` and `Orig`
for key in mpl.rcParamsDefault:
if not mpl.rcParamsDefault[key] == mpl.rcParamsOrig[key]:
print(key, mpl.rcParamsDefault[key], mpl.rcParamsOrig[key])
## backend agg Qt5Agg
Sí, llame a seaborn.reset_orig
.
Uno puede simplemente llamar a la función seaborn.set()
, sin parámetros de función, consulte [seaborn tutorial][1]
.