Solución de problemas #
Obteniendo la versión de Matplotlib #
Para averiguar su número de versión de Matplotlib, impórtelo e imprima el
__version__
atributo:
>>> import matplotlib
>>> matplotlib.__version__
'0.98.0'
matplotlib
ubicación de instalación #
Puede encontrar en qué directorio está instalado Matplotlib importándolo e imprimiendo el __file__
atributo:
>>> import matplotlib
>>> matplotlib.__file__
'/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/__init__.pyc'
matplotlib
ubicaciones de directorio de configuración y caché #
Cada usuario tiene un directorio de configuración de Matplotlib que puede contener un
archivo matplotlibrc . Para ubicar su matplotlib/
directorio de configuración, use
matplotlib.get_configdir()
:
>>> import matplotlib as mpl
>>> mpl.get_configdir()
'/home/darren/.config/matplotlib'
En sistemas similares a Unix, este directorio generalmente se encuentra en su
HOME
directorio bajo el .config/
directorio.
Además, los usuarios tienen un directorio de caché. En sistemas similares a Unix, está separado del directorio de configuración de forma predeterminada. Para localizar su
.cache/
directorio, utilice matplotlib.get_cachedir()
:
>>> import matplotlib as mpl
>>> mpl.get_cachedir()
'/home/darren/.cache/matplotlib'
En Windows, tanto el directorio de configuración como el directorio de caché son los mismos y están en su directorio o
de forma predeterminada:Documents and Settings
Users
>>> import matplotlib as mpl
>>> mpl.get_configdir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'
>>> mpl.get_cachedir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'
Si desea utilizar un directorio de configuración diferente, puede hacerlo especificando la ubicación en suMPLCONFIGDIR
variable de entorno: consulte
Configuración de variables de entorno en Linux y macOS . Tenga en cuenta que
MPLCONFIGDIR
establece la ubicación tanto del directorio de configuración como del directorio de caché.
Obtener ayuda #
Hay una serie de buenos recursos para obtener ayuda con Matplotlib. Es muy probable que su pregunta ya haya sido formulada:
Preguntas de Stackoverflow etiquetadas como matplotlib .
Si no puede encontrar una respuesta a su pregunta a través de la búsqueda, proporcione la siguiente información en su correo electrónico a la lista de correo :
Su sistema operativo (usuarios de Linux/Unix: publique el resultado de ).
uname -a
Versión de matplotlib:
python -c "import matplotlib; print(matplotlib.__version__)"
Donde obtuvo Matplotlib (por ejemplo, los paquetes de su distribución de Linux, GitHub, PyPI o Anaconda ).
Cualquier personalización de su
matplotlibrc
archivo (consulte Personalización de Matplotlib con hojas de estilo y rcParams ).Si el problema es reproducible, intente proporcionar una secuencia de comandos de Python mínima e independiente que demuestre el problema. Este es el paso crítico. Si no puede publicar un fragmento de código que podamos ejecutar y reproducir su error, las posibilidades de obtener ayuda se reducen significativamente. Muy a menudo, el mero hecho de tratar de minimizar su código al mínimo que produce el error le ayudará a encontrar un error en su código que está causando el problema.
Matplotlib proporciona información de depuración a través de la
logging
biblioteca y una función auxiliar para establecer el nivel de registro: uno puede llamarplt.set_loglevel("info") # or "debug" for more info
para obtener esta información de depuración.
Las funciones estándar del
logging
módulo también son aplicables; por ejemplo, uno podría llamarlogging.basicConfig(level="DEBUG")
incluso antes de importar Matplotlib (esto es particularmente necesario para obtener la información de registro emitida durante la importación de Matplotlib), o adjuntar un controlador personalizado al registrador "matplotlib". Esto puede resultar útil si utiliza una configuración de registro personalizada.
Si compiló Matplotlib usted mismo, proporcione también:
cualquier cambio que haya realizado en
setup.py
osetupext.py
.la salida de:
rm -rf build python setup.py build
El comienzo de la salida de la compilación contiene muchos detalles sobre su plataforma que son útiles para que los desarrolladores de Matplotlib diagnostiquen su problema.
su versión del compilador, por ejemplo, .
gcc --version
Incluir esta información en su primer correo electrónico a la lista de correo le ahorrará mucho tiempo.
Es probable que obtenga una respuesta más rápida escribiendo en la lista de correo que presentando un error en el rastreador de errores. La mayoría de los desarrolladores revisan el rastreador de errores solo periódicamente. Si se ha determinado que su problema es un error y no se puede resolver rápidamente, es posible que se le solicite que registre un error en el rastreador para que el problema no se pierda.
Problemas con versiones recientes de git #
Primero, asegúrese de tener una compilación e instalación limpias (consulte Cómo eliminar Matplotlib por completo ), obtenga la última actualización de git, instálela y ejecute un script de prueba simple en modo de depuración:
rm -rf /path/to/site-packages/matplotlib*
git clean -xdf
git pull
python -m pip install -v . > build.out
python -c "from pylab import *; set_loglevel('debug'); plot(); show()" > run.out
y publique build.out
y run.out
en la lista de correo de matplotlib-devel
(no publique problemas de git en la lista de usuarios ).
Por supuesto, querrá describir claramente su problema, lo que espera y lo que obtiene, pero a menudo una compilación e instalación limpias ayudarán. Consulte también Obtención de ayuda .