Подтвердить что ты не робот

Как создать интерфейс для matplotlib?

Я чувствую, что должен начать этот вопрос, отметив, что я инженер-химик, а не обученный программист (но я готов учиться).

Я обрабатываю много спектров, которые по существу являются файлами ASCII с координатами x, y, создаваемыми специальным программным обеспечением спектрометра. Стандартное программное обеспечение, используемое для анализа, это Origin from Originlab, но я считаю, что он не является удобным для пользователя, он имеет гораздо больше функций, чем мне нужно. это не бесплатно.

Итак, я надеялся, что есть способ разработать интерфейс для matplotlib, который позволяет использовать matplotlib с графическим интерфейсом. Я хочу иметь возможность читать и отображать данные из файлов ASCII, увеличивать и уменьшать масштаб изображения на графике, создавать сценарии вызова для таких функций, как функции обнаружения пика и подстановки, где в графическом интерфейсе могут быть введены специфические параметры функции.

Я просто озадачен, с чего начать, так что на самом деле вопрос: Каков самый простой способ разработки интерфейса/графического интерфейса для matplotlib, который позволяет мне программировать то, что я упомянул выше? Кроме того, в конечном счете, кросс-платформенное приложение было бы хорошо, потому что многие из моей группы работали в Windows.

4b9b3361

Ответ 2

Я не совсем уверен, что вы спрашиваете. Matplotlib уже имеет интерактивный графический интерфейс, если вы его вызываете из оболочки Python или ipython, например. Вы читаете или создаете свои данные, а когда вы вызываете plot(), вы получаете масштабируемое окно, из которого вы можете сохранить изображение и т.д.

Вы можете написать свои собственные процедуры для таких вещей, как обнаружение пиков, и просто вызвать их интерактивно с терминала. В конце дня, пока ваша функция создает набор данных (x, y), вы можете построить его в интерактивном режиме. Опыт тогда скорее похож на Matlab. Так большинство ученых, которых я знаю, используют matplotlib.

Я бы определенно попытался сначала поэкспериментировать с этим подходом и посмотреть, может ли он удовлетворить ваши потребности, прежде чем рассматривать какое-либо программирование графического интерфейса - особенно, если вы не программистом, тренируясь.