Уведомления

Группа в Telegram: @pythonsu

#1 Июль 17, 2012 11:02:41

dd67
От:
Зарегистрирован: 2011-12-22
Сообщения: 35
Репутация: +  1  -
Профиль   Отправить e-mail  

matplotlib как правильно залить полигон цветом

Нужно на закрашенном полигоне нарисовать поле скоростей командой quiver и сохранить рисунок в формате eps. В коде ниже рисунок в окне matplotlib-а рисуется правильно, но результат, сохраненный в eps неверен - т.к. стрелки, нарисованные quiver не видны.

#!/usr/bin/python
import matplotlib.pylab as p
from numpy import array
p.gca().add_patch(p.Polygon([[-2.2,0],[2.2,0],[2.2,3.5],[-2.2,3.5]],facecolor='yellow',alpha=0.5,fill=True,linewidth=1))
W=array([[0,0,2,1],[1,1,2,-2],[-1,1,-2,4]])
p.gca().quiver(W[:,0],W[:,1],W[:,2],W[:,3],color='black')
#p.arrow(0,2,0,-1)
p.savefig('ttest.eps')
p.show()

P.S.1 с редактором Gimp, например, задача решается так: в полигонах fill=Falst, в Gimp залить полигоны и eps получается правильный (правда размер его возврастает в разы). Хотелось бы решить проблему программно.

P.S.2 в другие форматы (pdf, png …) сохраняется правильно, но нужен eps. Конвертирование png в eps приводит к увеличению размера файла в десятки раз — это совсем не допустимо.



Отредактировано dd67 (Июль 17, 2012 11:07:04)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version