matplotlib для пользователя R? - PullRequest
12 голосов
/ 02 ноября 2009

Я регулярно делаю цифры (тип анализа исследовательских данных) на R. Я также программирую на Python, и мне было интересно, есть ли в matplotlib функции или концепции, которые стоит изучить. Например, я вполне доволен R - но его функция image () будет генерировать большие файлы с пиксельным выводом, тогда как эквивалентный показатель Matlab (я также регулярно программирую в Matlab) кажется управляемым по размеру файла и также сглаженным - Matplotlib также предоставляют такие сокращения ...? Но в целом мне интересно, какие еще преимущества может дать matplotlib. Я не имею в виду, что это вопрос троллинга. Спасибо.

Ответы [ 2 ]

12 голосов
/ 02 ноября 2009

На этот вопрос сложно ответить.

Недавно я переключил некоторые из моих рабочих нагрузок с R на matplotlib. По моему скромному мнению, графики matplotlib выглядят красивее (цвета по умолчанию лучше, они выглядят четче и современнее). Я также думаю, что matplotlib значительно улучшает рендеринг PNG.

Реальная мотивация для меня состояла в том, что я хотел работать со своими базовыми данными в Python (и numpy), а не R. Я думаю, что это большой вопрос, на каком языке вы хотите загрузить, анализ и манипулировать вашими данными?

С другой стороны, бонусом для R является то, что графики по умолчанию просто работают (есть функция для всего). Я часто копаюсь в документах matplotlib (они толстые) в поисках какого-то неясного способа отрегулировать границу или увеличить толщину линии. У рутинных заговоров есть некоторая зрелость.

4 голосов
/ 02 ноября 2009

Я думаю, что наибольшим преимуществом является то, что matplotlib основан на Python, о котором, как вы говорите, вы уже знаете. Таким образом, это один язык меньше, чтобы учиться. Просто потратьте время на освоение Python, и вы получите выгоду как непосредственно для задачи по рисованию, так и косвенно для других ваших потребностей Python.

Кроме того, IMHO Python является более богатым языком, чем R, с гораздо большим количеством библиотек, которые могут помочь для различных задач. Вы должны получить доступ к данным для построения графиков, и данные поступают во многих формах. В какой бы форме он ни появился, я уверен, что в Python есть эффективная библиотека для него.

А как насчет встраивания этих графиков в более полные программы, скажем, простые графические интерфейсы? matplotlib легко связывается с библиотеками Python GUI (например, PyQT), и вы можете создавать вещи, которые ограничены только вашим воображением.

...