SourceForge logo
SourceForge logo
Menu

matplotlib-users

From: Joao Q. da F. <Joa...@ma...> - 2015年07月28日 14:59:50
I am trying to use LaTeX on the ylabel of a plot using:
plt.ylabel("$\alpha$") 
and I am seeing very inconsistent behaviour. If I use $\alpha$ I get an error (see below), but \gamma is fine. $\tau does not give an error but plots a strange character.
Can you help? thanks
Joao
Using $\alpha$ like above gives a long error message:
---------------------------------------------------------------------------
ValueError
 Traceback (most recent call last)
/Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/formatters.pyc in __call__(self, obj)
 328 pass
 329 else:
--> 330 return printer(obj)
 331 # Finally look for special method names
 332 method = _safe_get_formatter_method(obj, self.print_method)
/Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/pylabtools.pyc in <lambda>(fig)
 205 
 206 if 'png' in formats:
--> 207 png_formatter.for_type(Figure, lambda fig: print_figure(fig, 'png', **kwargs))
 208 if 'retina' in formats or 'png2x' in formats:
 209 png_formatter.for_type(Figure, lambda fig: retina_figure(fig, **kwargs))
/Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/pylabtools.pyc in print_figure(fig, fmt, bbox_inches, **kwargs)
 115 
 116 bytes_io = BytesIO()
--> 117 fig.canvas.print_figure(bytes_io, **kw)
 118 data = bytes_io.getvalue()
 119 if fmt == 'svg':
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backend_bases.pyc in print_figure(self, filename, dpi, facecolor, edgecolor, orientation, format, **kwargs)
 2156 orientation=orientation,
 2157 dryrun=True,
-> 2158
 **kwargs)
 2159 renderer = self.figure._cachedRenderer
 2160 bbox_inches = self.figure.get_tightbbox(renderer)
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in print_png(self, filename_or_obj, *args, **kwargs)
 519 
 520 def print_png(self, filename_or_obj, *args, **kwargs):
--> 521 FigureCanvasAgg.draw(self)
 522 renderer = self.get_renderer()
 523 original_dpi = renderer.dpi
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in draw(self)
 467 
 468 try:
--> 469 self.figure.draw(self.renderer)
 470 finally:
 471 RendererAgg.lock.release()
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs)
 57 def draw_wrapper(artist, renderer, *args, **kwargs):
 58 before(artist, renderer)
---> 59 draw(artist, renderer, *args, **kwargs)
 60 after(artist, renderer)
 61 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/figure.pyc in draw(self, renderer)
 1083 dsu.sort(key=itemgetter(0))
 1084 for zorder, a, func, args in dsu:
-> 1085 func(*args)
 1086 
 1087 renderer.close_group('figure')
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs)
 57 def draw_wrapper(artist, renderer, *args, **kwargs):
 58 before(artist, renderer)
---> 59 draw(artist, renderer, *args, **kwargs)
 60 after(artist, renderer)
 61 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/axes/_base.pyc in draw(self, renderer, inframe)
 2108 
 2109 for zorder, a in dsu:
-> 2110 a.draw(renderer)
 2111 
 2112 renderer.close_group('axes')
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs)
 57 def draw_wrapper(artist, renderer, *args, **kwargs):
 58 before(artist, renderer)
---> 59 draw(artist, renderer, *args, **kwargs)
 60 after(artist, renderer)
 61 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/axis.pyc in draw(self, renderer, *args, **kwargs)
 1126 self._update_label_position(ticklabelBoxes, ticklabelBoxes2)
 1127 
-> 1128 self.label.draw(renderer)
 1129 
 1130 self._update_offset_text_position(ticklabelBoxes, ticklabelBoxes2)
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in draw_wrapper(artist, renderer, *args, **kwargs)
 57 def draw_wrapper(artist, renderer, *args, **kwargs):
 58 before(artist, renderer)
---> 59 draw(artist, renderer, *args, **kwargs)
 60 after(artist, renderer)
 61 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/text.pyc in draw(self, renderer)
 593 renderer.open_group('text', self.get_gid())
 594 
--> 595 bbox, info, descent = self._get_layout(renderer)
 596 trans = self.get_transform()
 597 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/text.pyc in _get_layout(self, renderer)
 318
 w, h, d = renderer.get_text_width_height_descent(clean_line,
 319 self._fontproperties,
--> 320
 ismath=ismath)
 321 else:
 322 w, h, d = 0, 0, 0
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc in get_text_width_height_descent(self, s, prop, ismath)
 226 if ismath:
 227 ox, oy, width, height, descent, fonts, used_characters = \
--> 228 self.mathtext_parser.parse(s, self.dpi, prop)
 229 return width, height, descent
 230 
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/mathtext.pyc in parse(self, s, dpi, prop)
 3003 self.__class__._parser = Parser()
 3004 
-> 3005 box = self._parser.parse(s, font_output, fontsize, dpi)
 3006 font_output.set_canvas_size(box.width, box.height, box.depth)
 3007 result = font_output.get_results(box)
/Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/mathtext.pyc in parse(self, s, fonts_object, fontsize, dpi)
 2337 err.line,
 2338 " " * (err.column - 1) + "^",
-> 2339
 six.text_type(err)]))
 2340 self._state_stack = None
 2341 self._em_width_cache = {}
ValueError
: 
$lpha$
^
Expected end of text (at char 0), (line:1, col:1)
From: Jens N. <jen...@gm...> - 2015年07月28日 15:05:18
I think you either need to escape the \ as \\ or use a raw string .i.e do
r'$\alpha$' otherwise \a gets interpreted as control character.
try entering '\alpha' in a regular python prompt and you will se what
happens.
Best
Jens
tir. 28. jul. 2015 kl. 16.01 skrev Joao Quinta da Fonseca <
Joa...@ma...>:
> I am trying to use LaTeX on the ylabel of a plot using:
>
> plt.ylabel("$\alpha$")
>
> and I am seeing very inconsistent behaviour. If I use $\alpha$ I get an
> error (see below), but \gamma is fine. $\tau does not give an error but
> plots a strange character.
>
> Can you help? thanks
>
> Joao
>
>
> Using $\alpha$ like above gives a long error message:
>
> ---------------------------------------------------------------------------
> ValueError
> Traceback (most recent call last)
>
> /Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/formatters.pyc
> in __call__(self, obj)
> 328 pass
> 329 else:
> --> 330 return printer(obj)
> 331 # Finally look for special method names
> 332 method = _safe_get_formatter_method(obj,
> self.print_method)
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/pylabtools.pyc
> in <lambda>(fig)
> 205
> 206 if 'png' in formats:
> --> 207 png_formatter.for_type(Figure, lambda fig:
> print_figure(fig, 'png', **kwargs))
> 208 if 'retina' in formats or 'png2x' in formats:
> 209 png_formatter.for_type(Figure, lambda fig:
> retina_figure(fig, **kwargs))
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/IPython/core/pylabtools.pyc
> in print_figure(fig, fmt, bbox_inches, **kwargs)
> 115
> 116 bytes_io = BytesIO()
> --> 117 fig.canvas.print_figure(bytes_io, **kw)
> 118 data = bytes_io.getvalue()
> 119 if fmt == 'svg':
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backend_bases.pyc
> in print_figure(self, filename, dpi, facecolor, edgecolor, orientation,
> format, **kwargs)
> 2156 orientation=orientation,
> 2157 dryrun=True,
> -> 2158
> **kwargs)
>
> 2159 renderer = self.figure._cachedRenderer
> 2160 bbox_inches = self.figure.get_tightbbox(renderer)
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc
> in print_png(self, filename_or_obj, *args, **kwargs)
> 519
> 520 def print_png(self, filename_or_obj, *args, **kwargs):
> --> 521 FigureCanvasAgg.draw(self)
> 522 renderer = self.get_renderer()
> 523 original_dpi = renderer.dpi
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc
> in draw(self)
> 467
> 468 try:
> --> 469 self.figure.draw(self.renderer)
> 470 finally:
> 471 RendererAgg.lock.release()
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in
> draw_wrapper(artist, renderer, *args, **kwargs)
> 57 def draw_wrapper(artist, renderer, *args, **kwargs):
> 58 before(artist, renderer)
> ---> 59 draw(artist, renderer, *args, **kwargs)
> 60 after(artist, renderer)
> 61
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/figure.pyc in
> draw(self, renderer)
> 1083 dsu.sort(key=itemgetter(0))
> 1084 for zorder, a, func, args in dsu:
> -> 1085 func(*args)
> 1086
> 1087 renderer.close_group('figure')
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in
> draw_wrapper(artist, renderer, *args, **kwargs)
> 57 def draw_wrapper(artist, renderer, *args, **kwargs):
> 58 before(artist, renderer)
> ---> 59 draw(artist, renderer, *args, **kwargs)
> 60 after(artist, renderer)
> 61
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/axes/_base.pyc
> in draw(self, renderer, inframe)
> 2108
> 2109 for zorder, a in dsu:
> -> 2110 a.draw(renderer)
> 2111
> 2112 renderer.close_group('axes')
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in
> draw_wrapper(artist, renderer, *args, **kwargs)
> 57 def draw_wrapper(artist, renderer, *args, **kwargs):
> 58 before(artist, renderer)
> ---> 59 draw(artist, renderer, *args, **kwargs)
> 60 after(artist, renderer)
> 61
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/axis.pyc in
> draw(self, renderer, *args, **kwargs)
> 1126 self._update_label_position(ticklabelBoxes,
> ticklabelBoxes2)
> 1127
> -> 1128 self.label.draw(renderer)
> 1129
> 1130 self._update_offset_text_position(ticklabelBoxes,
> ticklabelBoxes2)
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/artist.pyc in
> draw_wrapper(artist, renderer, *args, **kwargs)
> 57 def draw_wrapper(artist, renderer, *args, **kwargs):
> 58 before(artist, renderer)
> ---> 59 draw(artist, renderer, *args, **kwargs)
> 60 after(artist, renderer)
> 61
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/text.pyc in
> draw(self, renderer)
> 593 renderer.open_group('text', self.get_gid())
> 594
> --> 595 bbox, info, descent = self._get_layout(renderer)
> 596 trans = self.get_transform()
> 597
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/text.pyc in
> _get_layout(self, renderer)
> 318
> w, h, d =
> renderer.get_text_width_height_descent(clean_line,
>
> 319
> self._fontproperties,
> --> 320
> ismath=ismath)
>
> 321 else:
> 322 w, h, d = 0, 0, 0
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_agg.pyc
> in get_text_width_height_descent(self, s, prop, ismath)
> 226 if ismath:
> 227 ox, oy, width, height, descent, fonts, used_characters
> = \
> --> 228 self.mathtext_parser.parse(s, self.dpi, prop)
> 229 return width, height, descent
> 230
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/mathtext.pyc
> in parse(self, s, dpi, prop)
> 3003 self.__class__._parser = Parser()
> 3004
> -> 3005 box = self._parser.parse(s, font_output, fontsize, dpi)
> 3006 font_output.set_canvas_size(box.width, box.height,
> box.depth)
> 3007 result = font_output.get_results(box)
>
>
>
> /Users/joao/anaconda/lib/python2.7/site-packages/matplotlib/mathtext.pyc
> in parse(self, s, fonts_object, fontsize, dpi)
> 2337 err.line,
> 2338 " " * (err.column - 1) + "^",
> -> 2339
> six.text_type(err)]))
>
> 2340 self._state_stack = None
> 2341 self._em_width_cache = {}
>
>
>
> ValueError
> :
> $ lpha$
> ^
> Expected end of text (at char 0), (line:1, col:1)
>
>
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Matplotlib-users mailing list
> Mat...@li...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
From: Oscar B. <osc...@gm...> - 2015年07月28日 15:08:23
On 2015年7月28日 at 16:01 Joao Quinta da Fonseca <
Joa...@ma...> wrote:
> I am trying to use LaTeX on the ylabel of a plot using:
>
> plt.ylabel("$\alpha$")
>
> and I am seeing very inconsistent behaviour. If I use $\alpha$ I get an
> error (see below), but \gamma is fine. $\tau does not give an error but
> plots a strange character.
>
Can you help? thanks
>
This is to do with how Python handles strings and is not a matplotlib
issue. The \ is an escape character in Python strings but only for certain
letters e.g. \t is a tab character etc:
In [3]: print('$\tau$')
$ au$
In [4]: print('$\alpha$')
$lpha$
\g is not an escape so:
In [5]: print('$\gamma$')
$\gamma$
To include slashes in your string you either need to double them up or use
raw strings:
In [8]: print(r'$\alpha$')
$\alpha$
In [9]: print('$\\alpha$')
$\alpha$
--
Oscar
From: Joao Q. da F. <Joa...@ma...> - 2015年07月28日 15:12:15
That makes sense. Thank you.
João
> On 28 Jul 2015, at 16:08, Oscar Benjamin <osc...@gm...> wrote:
> 
> 
> 
> On 2015年7月28日 at 16:01 Joao Quinta da Fonseca <Joa...@ma...> wrote:
> I am trying to use LaTeX on the ylabel of a plot using:
> 
> plt.ylabel("$\alpha$")
> 
> and I am seeing very inconsistent behaviour. If I use $\alpha$ I get an error (see below), but \gamma is fine. $\tau does not give an error but plots a strange character.
> 
> Can you help? thanks
> 
> This is to do with how Python handles strings and is not a matplotlib issue. The \ is an escape character in Python strings but only for certain letters e.g. \t is a tab character etc:
> 
> In [3]: print('$\tau$')
> $ au$
> 
> In [4]: print('$\alpha$')
> $lpha$
> 
> \g is not an escape so:
> 
> In [5]: print('$\gamma$')
> $\gamma$
> 
> To include slashes in your string you either need to double them up or use raw strings:
> 
> In [8]: print(r'$\alpha$')
> $\alpha$
> 
> In [9]: print('$\\alpha$')
> $\alpha$
> 
> --
> Oscar
From: vijai <vi...@vi...> - 2015年07月30日 14:02:22
Have u tried ?
plt.ylabel(r'$\alpha$')
--
View this message in context: http://matplotlib.1069221.n5.nabble.com/Tex-error-in-plot-label-tp45964p45979.html
Sent from the matplotlib - users mailing list archive at Nabble.com.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /