본문 바로가기
공부 목록/IT & 프로그래밍

맥북 M1, M2 칩에서 python pyqt5 설치와 백앤드 설정

by 독학박사 2023. 11. 26.

목차


    맥북에서 파이썬을 이용하여 데이터 분석을 하거나 코딩을 하시는 분들에게 좋은 소식이 있습니다. 바로 pyqt5의 설치 관련인데요. 지금까지 맥북에서 바로 설치가 되지 않아 brew나 pyside를 설치해야 했습니다. 또한, 사용법도 윈도우와 조금 다르게 사용했는데 이제는 모든 사용이 윈도우와 동일하게 됐습니다. 해당 내용 자세히 알아보겠습니다.

     

    맥북에서 pip를 이용하여 pyqt5 설치하기
    맥북에서 pip를 이용하여 pyqt5 설치하기

     

    Vscode, Python에서 Pyqt5의 사용하는 목적

     

    pyqt는 GUI를 위한 라이브러리입니다. 데이터 분석용으로 파이썬을 사용할 경우 GUI를 개발할 일은 별로 없습니다. 제가 pyqt를 사용하는 이유는 데이터의 그래프를 생성할 때 새창으로 띄우기 위해서입니다.

     

    vscode 대화형 창에 생성되는 그래프
    vscode 대화형 창에 생성되는 그래프

     

    그래프를 새창에서 생성할 때 필요한 GUI를 pyqt 백앤드 설정으로 불러들이는 겁니다. 이렇게 하게 되면 그래프의 확대 축소 및 그래프의 많은 기능들을 활용할 수 있게 됩니다.

     

     

    Vscode에서 Pyqt5 설치하는 방법

    23년 8월까지는 pyqt5를 맥북에서 바로 설치하는 것이 불가능하여 brew를 이용하여 설치하는 방법이 있었으나 잘 적용되지 않았습니다. 제가 작년에 쓴 글에서는 pyside를 이용하는 방법을 정리했으나 vscode가 정지하는 등의 에러가 있었습니다.

     

    23년 9월 이후에 pyqt에서는 맥북에서도 pip로 설치할 수 있도록 공지하고 있습니다.

     

     

    Installing PyQt5 on MacOS

    Install PyQt5 on macOS. Before you start the PyQt5 tutorial you will need to have a working installation of PyQt5 on your system.

    www.pythonguis.com

     

    설치하는 방법은 터미널이나 vscode 내에서 아래의 명령을 실행하는 겁니다.

     

    pip install pyqt5

     

    vscode 아래 터미널 창에서 pip 실행하여 pyqt5 설치
    vscode 아래 터미널 창에서 pip 실행하여 pyqt5 설치

     

     

    물론 맥북에 pip를 바로 사용할 수 있게 설치 및 환경변수 설정을 해야 됩니다. 그렇지 않다면 pip3나 python3을 pip 대신 사용해야 합니다.

     

    pip 설치 관련 내용은 아래 링크에서 확인하실 수 있습니다. 해당 글에는 예전 pyside 설치하는 내용도 포함되어 있습니다.

     

    맥북에서 pip 설치하는 방법

     

    맥북 M1에서 matplotlib 그래프 새창을 위한 pyqt 백엔드 사용하기(vscode)

    맥북 M1을 구매한 지 약 5개월이 지났다. 파이썬 프로그램 활용과 그래픽 툴 사용을 위해 선택한 M1칩이었지만, 기존 사용하던 python과 vscode의 활용이 적용되지 않아 피로가 쌓이던 참에 확실하게

    lifelong-education-dr-kim.tistory.com

     

     

    Vscode에서 새창 backend 설정하는 방법

    주피터 노트북이나 vscode에서 어떠한 설정도 하지 않으면 그래프는 프로그램 내에 출력이 됩니다. 이렇게 되면 그래프 확대 기능을 사용할 수 없습니다.

     

    주피터 노트북이나 vscode에서 '%matplotlib' 명령을 사용해서 백앤드 설정을 변경할 수 있습니다. 아무런 설정을 하지 않으면 기본적으로 '%matplotlib inline'으로 될 것이며 이는 프로그램 내 출력을 의미합니다.

     

    pyqt5를 설치했다면 'qt5' 라이브러리를 사용할 수 있게 됩니다. 이때 백앤드 설정은 아래와 같습니다.

     

    import matplotlib
    
    %matplotlib qt5

     

    백앤드를 사용한 후에 그래프 창을 띄우면 아래와 같이 qt5 GUI를 갖는 새창에서 그래프가 보입니다. 축소, 확대, 이동 등의 아이콘들이 있어서 해당 기능을 사용할 수 있습니다.

     

    백앤드 설정으로 새창에서 그래프 출력
    백앤드 설정으로 새창에서 그래프 출력

     

    pyside를 사용할 때는 matplotlib.use('qt5agg')란 설정을 사용했는데, 해당 설정의 문제는 새창이 떠 있는 동안 vscode가 먹통이 되는 겁니다. 

     

     

    Python 백앤드 사용 시 유의점

    백앤드 설정은 코딩 초기에 합니다. vscode나 주피터 노트북과 같이 셀 단위 프로그래밍과 실행 위주로 코딩을 할 때는 유용합니다.

     

    전체 프로그램을 한 번에 실행시킬 때는 백앤드를 주석 처리해야 합니다. 일반적인 프로그래밍에서는 '%'는 사용되지 않기 때문입니다. 또한, '.py'확장자를 실행하게 되면 자동으로 새창에서 그래프가 생성됩니다.

     

     

    마치며

    pyqt5의 기능 업데이트로 이제는 맥북에서도 간편하게 qt5 백앤드 기능을 사용할 수 있게 됩니다. 'pip'를 이요하여 맥북에서 pyqt5를 설치하고 프로그램 초기에 '%'를 이용한 백앤드 설정까지 알아봤습니다. 해당 기능 개선으로 맥북에서의 데이터 분석이 힘을 발휘할 것 같습니다.