분류 전체보기 12

[DOCKER] JUPYTER NOTEBOOK 설치 순서 (password for jovyan)

시놀로지 NAS를 사용할 궁리를 하던중 여러가지 플랜 중 먼저 기존 COLAB에서 돌리던 블로그 스크립트를 파이썬을 깔아서 써보기로하였다. 그런도중 DOCKER 사용연습겸 도커로 파이썬을 깔아보았다. 시놀로지에서는 아래와같이 GUI 기능을 제공한다. 사용방법은 많이 나와있었으나 익숙치 않았지만 적응 잘 할수 있었다. 설치과정은 다음과 같다. 1. 쥬피터 노트북 이미지 다운 2. 설치 3. 설치시 환경설정 4. 인증후 시작 5. 스크립트 마운트 경로에 복사 6. 각종 환경설정 인스톨... (!pip... or !apt...) 1.쥬피터 노트북 이미지 다운 gui라 클릭클릭 으로 해결 2. 설치 gui라 클릭클릭 으로 해결 3. 설치시 환경설정 포트 : 컨테이너 포트는 8888로, 로컬포트는 입맛에 맞게, ..

[NAS] 포트포워딩

나스를 이리저리 가지고 놀다가 아무것도 작동이 안되는것을 발견 "https://###.quickconnect.to/" 와 같은 주소를 사용하면 접속이 되는데 IP주소를 치면 혹은 해당 도메인(@@@@.synology.me)을 치면 안된다. 열심히 찾아본 결과 공유기와 연결된 NAS 기 때문에 해당 IP및 도메인은 내부IP(공유기와 NAS간의 IP) 와 연결된 것 따라서 ipconfig에있는 게이트웨이에 접속해서 포트포워딩을 열심히 설정해주었다... 는 안되었고 확인결과 내 pc에서는 안되고 와이파이로 연결된 노트북에서는 된다... 아마도 내 pc는 벽에서 뚫고 나온 랜선으로 한번더 거치는 과정이 있는듯하다... 아무튼 포트포워딩 설정은 공유기와 직접적(?)인 와이파이로 연결된 노트북이나 핸드폰으로 연결해..

[내돈내산] NAS 한달 개봉기 (Synology NAS DS220+)

DS 220+ 를 선물받았다. (내돈내산이 아니네?) 그런데... HDD가 없어서 한달뒤에 개봉하였다 ㅋ.ㅋ.ㅋ.ㅋ 우선 내가 그래도 IT관련 종사자지만 NAS는 인프라팀에만 맡겻지 내스스로 만저본적은 없다. 그래서 시행착오를 겪어서 엄청 딜레이가 되었고 결국 어찌저찌해서 열심히 설치해보았다.. 우선 HDD가 없다.. 나스용 HDD가 매우 비싸단걸 알고 하드 적출해서 꽂으려다가 당근에 우연히 싸게파는걸 발견! 하지만 돈은 SAVE가 안되었으나 급이 올라갔다.. 아무튼 6TB 두개 겟! (어디서 들어본건 있어서 RAID1을 구성하려고 같은걸로 잘 구했다.) 아무튼 이제 구동할수 있으니 자그마치 한달만에 선물받은 나스를 개봉하였다. 크... 심플하다 머 개봉기는 딱히 여타 다른 블로그/유튜버랑 다를게 없을게..

[python] (추가) matplotlib vs plotly

최근 열심히 운영하고있는 경제블로그에서 차트를 올리기위해 matplotlib를 이용해 올리던 도중 plotly를 알게되어 접목해보았다. 몇가지 차이점이 있어서 plotly로 바꾸게 되었다. 1. 한글화 matplotlib의 경우 한글이 깨지는 경우가 생긴다. 그리고 구글링을 해서 해결법을 찾아도 마땅히 잘 적용이 안되는 현상이 있다. (COLAB 기준) 그러나 plotly는 잘 적용된다... 2. 이미지 로드방식 matplotlib의 경우 png로 저장해서 그걸 업로드하는 식으로 진행이 되어 로컬 드라이브가 필요하다 하지만 plotly는 자체 api를 제공하여 해당 주소를 리턴하고 그걸 iframe 같은걸로 불러오면 된다. 즉 사진으로 저장된게 아니다.. 그래서 사용자가 클릭하면 데이터가 확대되기도하고 ..

[python] matplotlib vs plotly

https://towardsdatascience.com/matplotlib-vs-plotly-lets-decide-once-and-for-all-dc3eca9aa011 Matplotlib vs. Plotly: Let’s Decide Once and for All Deep and rapid comparison in terms of 7 key aspects towardsdatascience.com 잘나와잇어서 스크랩~ 요약하면 속도면에서는 Matplotlib 압승 Plotly는 Matplotlib 보다 구조적으로 좋지만 아직은 비슷하다. 아직은 Matplotlib가 대세지만 Plotly가 계속 다음버전이 나온다면 Plotly가 앞서는 날이 올지도?

프리코스 1주차 후기

IntelliJ를 설치한지 1달이 채 안되었고, 스프링 강의를 들은지 1달이 채 안되었고... 단지, SM인력으로 스프링 유지보수만 했던 경험밖에 없어서 많이 애먹었다. 심지어... 나는 금융 SM이라서 흔히쓴다는 GIT 조차 쓰지 못해서 GIT 사용법에 허덕이며 열심히 구글링을 했다. Test? Junit은 뭐람 우리회사는 엑셀로 테스트하는데 여차저차해서 열심히 한 후 제출을 했지만 매우 허접하다는 생각이 들었다. 기 제출한 사람들 것을 보니 열심히 해서 이간극을 줄여야겠다는 생각밖에 안듬.. 후... 그래도 재밌게 했으니 만족한다 열심히해보자! 한줄평 : 우물안 개구리라는 것을 느낄수 있었다.

[COLAB] matplotlib에서 한글 깨짐 해결

COLAB 에서는 파일시스템 지원이 약간 구리다. 그리고 matplotlib는 default로 한글이 지원이 안되서 따로 설정을 해줘야한다. 그래서 가끔 위와같은 메세지를 띄우고 아래와 같이 폰트를 제대로 설정해주어도 제대로 작동하지 않는다. import matplotlib.pyplot as plt plt.rc('font', family='NanumBarunGothic') 이때는 import matplotlib matplotlib.font_manager._rebuild() 를해주면 된다.... 라고 해결방법이 제시되었는데 잘안된다. 원인은 matplotlib에서 font를 불러올대 json으로 불러오는데 이게 업데이트가 이상하게 되서 그렇다고한다. --> 해결방법 [런타임] + [런타임 재시작] 여러번 ..

[COLAB] FileNotFoundError: [Errno 2] No such file or directory

COLAB 으로 파이썬 코드를 실행하는데 아래와 같은 에러가뜸 원인은 경로가 없는것... 따로 import 시킨 .py 파일에서 경로를 못찾는거라 검색해보니 경로가 잘못되었다고함. colab 특성상 파일읽어오는 경로가 다르기때문에 기존 그냥 노트북에서 잘돌아가던 코드들이 경로를 못찾는것이다. [해결방법] import os os.getcwd() 로 위치를 알아낸뒤 경로를 맞게 수정해서 사용 파일 경로는 아래 경로 밑에 하위경로로 되어있어서 아래 경로를 추가로 앞에 참조해줘야한다. /content/drive/MyDrive/

[COLAB] OSError: Chrome executable not able to be found on your machine

최근 이직 후 공부를 다시 시작하며 colab 을 통해 취미로 파이썬 코드를 짰다. dataframe을 이미지화 하는 부분에서 에러가 발생하였다. 해결방법은 간단했다. 크롬 드라이버를 인식하지 못해서 였다. 다행히 빠르게 해결해서 다행이었다. !pip install selenium !apt-get update # to update ubuntu to correctly run apt install !apt install chromium-chromedriver sys.path.insert(0,'/usr/lib/chromium-browser/chromedriver') from selenium import webdriver chrome_options = webdriver.ChromeOptions() chrome_..

Synchronous Asynchronous Blocking Non-Blocking

각각의 내가 이해한 의미는 이러함. Synchronous - 실행하는 주체가 결과까지 책임지는것 (끝났니?) Asynchronous - 실행하는 주체가 결과까지 책임질 필요가 없음, 콜백함수로 처리. (끝나면 알려줘!) Blocking - 실행하는 주체의 제어권이 없음 (완료될때까지 여기있을게~) - 지금작업이 끝나기 전까지는 아무것도 막혀서(Blocking) 못한다 (c scanf 등) Non-Blocking - 실행하는 주체의 제어권이 있음 (완료되길 바랄게 난 다른거 있으면 하고있을게!) - 실행하고서 다음작업도 실행 (일반적으로 웹브라우저에서 볼 수 있음) 따라서 조합을 하면 다음과 같다. Synchrounous and Blocking - 실행하고서 제어권이 없음. 결과까지 책임져야함. - 그러므..