Para la mayor parte de mi trazado interactivo con matplotlib, no quiero usar el procesamiento de látex de matemáticas. (Sobre todo porque es demasiado lento, pero también porque es demasiado borroso para mi uso frecuente en mi humilde opinión.) Pero también uso mis propias macros todo el tiempo cuando escribo látex. Como solo un ejemplo, en lugar de hacer algo como $M_{\odot}$
, defino $\Msun$
. Entonces cuando uso matplotlib, tengo la tendencia de simplemente escribir el último automáticamente, y luego obtener un error y tener que arreglarlo. Este es solo un ejemplo particularmente simple, y me gustaría tener la flexibilidad para redefinir una macro en mis documentos y mis trazados simultáneamente sin demasiado trabajo.Extendiendo el analizador de matplotlib mathtext
Entonces, ¿hay alguna manera razonablemente buena de que pueda extender el analizador de texto matemático para comprender cosas como $\Msun$
? ¿O tendría que hackear mathtext.py o algo así?
(Mi repliegue está definiendo Msun
como la cadena r'M_{\odot}'
así que podría escribir algo como r'$M = 10\,' + Msun + '$'
, pero eso es desagradable y ciertamente no sería nada más automático para mí.)
Y para ahorrar esfuerzo de escritura, podría crear su propia función de "texto" que primero llama "expandir" y luego pasa los resultados al "texto" de matplotlib. Ahora simplemente llama a mike.text (x, y, '$ \ Msun $') o cualquier otra macro de látex que le guste. – Daan
Sí, esto debería funcionar. Además, como utilizo 'ipython --pylab' de todos modos, creo que puedo' del texto', luego importo 'mike.text', que llamará' matplotlib.pyplot.text' - y de manera similar para 'xlabel', 'ylabel', etc. (Aunque soy un novato de Python, así que por favor corrígeme si eso es estúpido.) ¡Gracias! – Mike