繁体   English   中英

matplotlib 中的数学文本标记

[英]Mathtext markers in matplotlib

因为我需要 plot 在一个图中有许多曲线,所以我需要许多不同类型的标记。 有时默认标记的数量不够,所以如果用户可以自定义标记类型会很好。

根据文档页面( http://matplotlib.sourceforge.net/api/artist_api.html#matplotlib.lines.Line2D.set_marker ),可以使用 mathtext 作为标记。 但是,它在我的情况下不起作用。

plot(x, y, marker='$||$') # To use two vertical lines as the marker.

错误信息是这样的:

File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 3432, in plot
  for line in self._get_lines(*args, **kwargs):
File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 311, in _grab_next_args
  for seg in self._plot_args(remaining, kwargs):
File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 298, in _plot_args
  seg = func(x[:,j%ncx], y[:,j%ncy], kw, kwargs)
File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 248, in _makeline
  self.set_lineprops(seg, **kwargs)
File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 191, in set_lineprops
  func(val)
File "/usr/lib/pymodules/python2.6/matplotlib/lines.py", line 804, in set_marker
  self._markerFunc = self._markers[marker]
KeyError: '$||$'

matplotlib 版本为:

matplotlib.__version__
'0.99.1.1'

我也试过plot(x, y, marker=r'$||$') ,它也不起作用。

您是否在 matplotrc 文件中设置了text.usetex 您还需要使用正确的 output 后端,例如 Postscript 或 PDF。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM