2013-09-25 2 views
1

Я использую IPython Notebook. До сих пор все, что у меня есть, это:Как я могу аннотировать изображение в IPython?

from IPython.core.display import Image 
Image(filename='gibbs.png') 

Что действительно отображает изображение очень хорошо. Теперь я хочу добавить несколько текстовых полей и стрелок, указывающих на определенные зоны на изображении, в идеале все внутри кода (вместо перетаскивания).

Что-то подсказывает мне, что мне, вероятно, придется это сделать в Matplotlib, но я хочу знать, какие лучшие практики.

+1

Да, вы, вероятно, придется использовать что-то как matplotlib или PIL, чтобы аннотировать изображение. Хотя я думаю, вы могли бы встроить его в HTML и аннотировать его с помощью HTML и CSS, но это, вероятно, более сложно. –

ответ

2

Вы можете использовать matplotlib для этого. Функция annotate позволит вам включать стрелки и текст. Если вы хотите текст без стрелки, то опустите часть «arrowprops». Если вы хотите стрелку, но не текст, просто включите пустую строку.

Попробуйте этот код:

import matplotlib.pyplot as plt 
data = plt.imread('gibbs.png') 

plt.imshow(data) 

plt.annotate('Label A',xy=(81,130),xytext=(150,200),arrowprops=dict(facecolor='red')) 

plt.show() 

Вот вывод, что я получаю, при условии, что вы используете PNG из Гиббс: enter image description here

+0

красивый пример изображения –

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