2014-12-20 2 views
1

Matplotlib 'annotate, кажется, не правильно позиционирует текст при визуализации в PDF.«Аннотировать» Matplotlib, не правильно позиционируя текст в PDF-файлах?

Например, если я попытаюсь центрирования ▲ character на месте клеща на оси с

fig.ax.annotate('▲',(a_tic_loc, x_axis_loc), ha='center', va='top') 

вместо того, чтобы ожидаемый и правильно

как я при оказании PNG я получаю

в моем PDF (на OS X 10.10; Python 2.7.6; Matplotlib 1.4.2).

Это известная ошибка? Есть ли надежное решение?

ответ

1

Использование латекса:

import pylab as pl 
fig, ax = pl.subplots(figsize=(12, 4)) 
ann = ax.annotate(r'$\blacktriangle$',(0.2, 0.0), ha='center', va='top', size=40) 

Вот результат:

enter image description here

+0

Это похоже на работу (хотя '\ blacktriangle', кажется,' черный UP-УКАЗЫВАТЬ TRIANGLE', а не ' BLACK UP-POINTING SMALL TRIANGLE', есть ли LaTeX для этого?). Является ли такая настройка единственным решением: это (известная) ошибка в matplotlib или рендерере PDF? – orome

+0

У меня есть много символов, которые я использовал для аннотации, а не только треугольник (который является примером), и многие из них не входят в набор символов LaTeX. – orome

Смежные вопросы