Я регулярно делаю цифры (тип анализа исследовательских данных) в R. Я также программирую на Python и задавался вопросом, есть ли в matplotlib функции или концепции, которые стоит изучать. Например, я вполне доволен R, но его функция image() будет создавать большие файлы с пиксельным выходом, тогда как эквивалентная цифра Matlab (я также регулярно программирую в Matlab) кажется управляемой в размере файла, а также "сглаженной" - делает matplotlib также обеспечивают такие сокращения...? Но в целом, интересно, какие другие преимущества могут дать matplotlib. Я не имею в виду, что это вопрос троллинга. Спасибо.
Matplotlib для пользователя R?
Ответ 1
Это сложно ответить.
Недавно я переключил часть моей графической рабочей нагрузки с R на matplotlib. По моему скромному мнению, я считаю, что графики matplotlib будут красивее (лучшие цвета по умолчанию, они выглядят более четкими и более современными). Я также думаю, что matplotlib делает PNG намного лучше.
Реальная мотивация для меня, однако, заключалась в том, что я хотел работать с моими базовыми данными в Python (и numpy), а не R. Я думаю, что это большой вопрос, на который вы хотите загрузить, на каком языке вы хотите загрузить и манипулировать данными?
С другой стороны, бонус для R состоит в том, что строковые значения по умолчанию просто работают (есть функция для всего). Я часто нахожусь в копании через документы matplotlib (они толстые), ища какой-то неясный способ регулировки границы или увеличения толщины линии. R-графики имеют некоторую зрелость позади них.
Ответ 2
Я думаю, что самым большим преимуществом является то, что matplotlib основан на Python, который, как вы говорите, уже знаете. Итак, это один язык, который меньше для изучения. Просто потратьте время на освоение Python, и вы получите выгоду как непосредственно для задачи построения, так и косвенно для других потребностей Python.
Кроме того, IMHO Python является более богатым языком, чем R, с гораздо большим количеством библиотек, которые могут помочь в решении различных задач. Вы должны получить доступ к данным для печати, а данные поступают во многих формах. В какой бы форме он ни появился, я уверен, что у Python есть эффективная библиотека для этого.
А как насчет встраивания этих сюжетов в более полные программы, скажем, простых графических интерфейсов? matplotlib легко связывается с Python GUI libs (например, PyQT), и вы можете сделать материал, ограничивающий только ваши фантазии.