Чтобы добавлять сообщения и комментарии, .

@Equidamoid:
Equidamoid

Чем ближе дедлайн, тем веселее глюки. Теперь падает интерпретатор от вызова plot() для объекта Axis. Независимо от аргументов падает.

@masai:
masai

Оказывается, в matplotlib 1.3.x будет возможность отображать графики в стиле комиксов xkcd → github.com
Забавная штука.
См. также: jakevdp.github.com

@gvard:
gvard

Уже как 5 дней вышел matplotlib 1.2.0. Новое: matplotlib.org Качать: github.com

@Strephil:
Strephil

Всё, что раздражало меня в gnuplot, кажется, устранено в matplotlib, хотя matplotlib на gnuplot и похожа.
Мне в matplotplib нравится, что всё сделано единообразно, что нету множество частных случаев, в каждом из которых одинаковые действия выполняются по-разному.
Вместо довольно убогенького язычка в matplotlib полноценный python. При этом ipython -pylab позволяет работать интерактивно.

Не вижу вообще ни единой причины использовать gnuplot вместо matplotlib.
Вот даже себя почти уговорил бросить каку и взяться за matplotlib.

@datacompboy:
datacompboy

Как бороться с этой лабудой?
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 955 error_code 8 request_code 73 minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)

@Konst:
Konst

Окончание (видимо, счастливое) эпопеи с PyInstaller: 4-q-all.blogspot.com

@Fang:
Fang

руляет и педалит!

@gvard:
gvard

Поставил и запустил свой spectractor на винде. Завелось на python-2.6 без проблем, класс! Надо посмотреть, как там с более поздними версиями у scipy.
Пора делать страничку spectractor.sourceforge.net и класть туда архив, пока там все еще git-репа. Перфекционизм и необходимость работать сильно тормозят процесс.

@alsmirn:
alsmirn

Сука: ImportError: liblapack.so.3: cannot open shared object file: No such file or directory. Хер его знает куда копать. Дома уже посмотрю.

@gvard:
gvard

>>import matplotlib.lines as lines
>>lines.Line2D.markers
{0: '_draw_tickleft',
1: '_draw_tickright',
...
'1': '_draw_tri_down',
Кто бы мог подумать!

@alsmirn:
alsmirn

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

@zeabrah:
zeabrah

Вышел matplotlib 1.0! Yes! И вот буквально скоро выйдет новый SciPy 0.8.

@gvard:
gvard

Уже пару дней как матплотлиб 1.0 вышел и даже ебилд появился, а новости еще никто не написал! Есть немного вкусностей в релизе: matplotlib.sourceforge.net

@gvard:
gvard

Нет, ну какая красота все-таки матплотлиб! Добавление интерактивности в скрипты заняло несколько минут. Ставим точки мышкой на графике, после n-го клика окно с графиком закрывается: класс с методом __call__ в несколько строчек.
Конечно, во внутренней реализации либы не все красиво, но может к 1.0 зарефакторят.

@alsmirn:
alsmirn

Симпатично: в гнуплоте 4.4.0 появилась интерактивная работа с графиками при помощи HTML5 canvas (пример <gnuplot.sourceforge.net>), они ещё циклы добавили там в синтаксис... Всё-равно это всё не нужно ибо есть matplotlib.sourceforge.net :D

@gvard:
gvard

Ну что ж, я натестировался вволю, пора подводить итоги и писать заметку =) Создание графиков на лету, без сохранения на диск и их выдача сервером может быть реализована с помощью PIL или метода canvas.print_png. Оба варианта работают с использованием библиотек, написанных на Си; если я правильно понял, это _imaging.so и _png.so. Различия во времени исполнения заметны: это до 10 сек для 100 прогонов. Различия обусловлены, похоже, только реализацией matplotlib: чем быстрее у него "отнять" данные графика, тем быстрее будет.

@gvard:
gvard

Еще одна вариация того способа, которым я в Джанго делаю картинки на лету: wiki.pylonshq.com
Тут те же самые canvas.tostring_rgb() и PIL.Image.fromstring(), но чуть иная система работы с канвасом бекэнда Agg. Почему никому (судя по выдаче гугла) не приходила идея не делать тустринг, фромстринг, а сразу матплотлибом сохранить картинку? Это работает (и результат мне нравится больше), но почему возникает потеря производительности?

@gvard:
gvard

Чем дальше в лес, тем больше грибов. В процессе оптимизации функций создания картинок без сохранения на диск (это чтобы сервер их сразу отдавал по запросу) выяснилось, что конвеер canvas.tostring_rgb() -> PIL.Image.fromstring() -> Image.save(StringIO, format='PNG') быстрее, чем сохранение картинки матплотлибовским канвасом напрямую: fig.savefig(StringIO).
Причем что в pure python, что в cython. Разница на 120 прогонах: 27 против 37 секунд.

@zeabrah:
zeabrah

Хорошее и простое описание
возможностей Matpllotlib/pylab: koldunov.net