Посты с тэгом pyqt


Рисуем графы в PyQT

Графовая аналитика – распространенный инструмент в поиске связей в разрозненных данных. В статье попробуем с использованием PyQT и networkx сделать простейший инструмент для визуализации связей.

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

Алгоритм работы такой: на входе я брал *.csv файлы из базы данных, которые я сводил в pandas, и затем посредством группировок и фильтров выводил связи по каждому клиенту и организации, а после закидывал это все в networkx и получал на выходе граф, с которым уже работал совместно с аналитиком.

Аналитики, посмотрев на это все, сказали, а может сделаем что-нибудь быстрое для нас, чтобы мы сами там крутили все и смотрели. Конечно же, мой ответ был – а может что-нибудь из open-source? Возьмите Gephi, например. Прошла неделя, при



[Из песочницы] pyqtdeploy, или упаковываем Python-программу в exe'шник… the hard way


Наверняка, каждый, кто хоть раз писал что-то на Python, задумывался о том, как распространять свою программу (или, пусть даже, простой скрипт) без лишней головной боли: без необходимости устанавливать сам интерпретатор, различные зависимости, кроссплатформенно, чтобы одним файлом-exe'шником (на крайний случай, архивом) и минимально возможного размера.


Для этой цели существует немало инструментов: PyInstaller, cx_Freeze, py2exe, py2app, Nuitka и многие другие… Но что, если вы используете в своей программе PyQt? Несмотря на то, что многие (если не все) из выше перечисленных инструментов умеют упаковывать программы, использующие PyQt, существует другой инструмент от разработчиков самого PyQt под названием pyqtdeploy. К моему несчастью, я не смог найти



PyQt. Управляем памятью, собираем мусор



Давным давно был язык С. И были в нем 2 функции управляющие памятью — malloc и free. Но это было слишком сложно.
Посмотрел на это Бьёрн Страуструп и решил что нужно сделать все проще. И изобрел С++. В дополнение к malloc/free там появились new/delete, деструкторы, RAII, auto и shared указатели.
Посмотрел на это Гвидо ван Россум, и решил, что С++ тоже не достаточно прост. Он решил идти другим путем и придумал Python, в котором даже malloc и free нет.
А тем временем норвежские троли создали на С++ GUI-библиотеку Qt, которая упрощает управление памятью для своих объектов за счет того, что сама их удаляет, когда посчитает нужным.
Phil Thompson расстроился, что отличной библиотеки Qt нету для замечательного языка Python. И решил их объединить проектом PyQt. Однако, как оказалось, если


Простой классификатор на PyBrain и PyQt4 (Python3)

Изучая Python3, я портировал (как смог) библиотечку PyBrain. Об этом я уже писал здесь.

Теперь же я хочу немного «поиграть» с данной библиотечкой. Как я уже говорил в предыдущем посте, питон я только начал изучать, так что все написанное в этой статье не стоит воспринимать как Истину. Изучение — это путь, и он извилист.

Задачу поставим перед искусственной нейронной сетью (ИНС) весьма простую — классификацию, а именно: распознавание букв латинского алфавита.

Вроде бы классический пример, про него уже писали на хабре неоднократно: «Что такое искусственные нейронные сети?», «Нейронные сети и распознавание символов» и т.



Ограничения пробной версии NCReport

К моему удивлению, появился некоторый интерес к моему старому посту о PyNCReport. При этом возник вопрос об ограничениях пробной версии, доступной для скачивания, и просьба показать использование PyNCReport на примерах. Примеры я приведу в отдельной статье позднее, а про лицензирование NCReport исследование провел. Итак. На сайте производителя nocisoft.com доступны для скачивания сам NCReport



Yet another python Chat client

Приветствую, хабраюзер.
Уже была статья про чат-клиент на питоне на хабре. Данная статья и сподвигла написать свой велосипед в академических целях, но повторять чужой код не интересно, поставим задачу поинтереснее: Jabber(Асимитричное шифрование RSA)+PyQt.
Если интересно добро пожаловать под кат.
Читать дальше →



[Из песочницы] Рисуем свою кнопку в QGraphicsScene в PyQt4

Хабы: Qt Software, Python

Казалось бы, что может быть проще обычной кнопки с её стандартным поведением и привычным всему миру видом? Однако, сам процесс создания своей кнопки не менее интересен, чем создание целого приложения с помощью PyQt4.

Здесь приводится пример создания в QGraphicsScene своей рисованной кнопки с помощью QGraphicsWidget.

Рекомендуется к прочтению людям, имеющим опыт работы с PyQt4.
Читать дальше →



[Из песочницы] Реализация паттерна MVC для PyQt

Хабы: Python

Всем доброго времени суток!
В статье описывается реализация паттерна проектирования MVC для приложений использующих PyQt, на примере программы сложения двух чисел. Помимо описания реализации паттерна приводится описание процесса создания приложения.

Читать дальше →



Phonon: Я хочу, чтобы песня звучала

Опыт показывает: пользователь рабочего места, связанного со специфической периферией (автоматизированная касса, испытательный стенд, терминал сбора данных), всегда хочет звукового уведомления о ключевых событиях и нештатных ситуациях. Не миновала чаша сия и меня. Задача, в общем, тривиальна: хочется, чтобы в определенные моменты программа издавала определенный звук. Какой именно звук, должно




PyNCReport: сборка и установка под Windows

Всякой уважающей себя учетной программе, даже самой маленькой, требуется подсистема отчетов. Ну любят клиенты бумажные отчеты. Времена, когда подсистемы отчетов писали руками и с нуля каждый под себя, слава высшему разуму, давно прошли. Сегодня разработчик ищет подходящий генератор отчета (далее репген) и прикручивает его к своему творению, чем экономит собственное время, деньги работодателя и