2

1つの図に多くの曲線をプロットする必要があるため、さまざまな種類のマーカーが必要です。デフォルトのマーカーの数が十分でない場合があるため、ユーザーがマーカーの種類をカスタマイズできると便利です。

ドキュメントページ(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'$||$')ましたが、どちらも機能しません。

4

1 に答える 1

0

text.usetexmatplotrcファイルを設定しましたか?また、PostscriptやPDFなどの適切な出力バックエンドを使用する必要があります。

于 2011-07-15T13:57:17.570 に答える