개발/프로젝트 8

웹대시보드 프로젝트 - 8일차 (EC2 배포 에러 )

github에 push 할때마다 서버에서 자동으로 pull 하는 방법을 적용하여 테스트하는데 문제가 발생하였다. ( 자동배포는 https://mokokodevelop.tistory.com/97 ) 서버가 죽는 현상이 발생하였고 , 다시 실행시키면 대시보드 자체는 문제없이 돌아가는 듯 했으나.. 큰 실수를 범하게 되는데 웹대시보드에 쥬피터노트북에서 파일들을 가공한 데이터들의 가공과정을 그대로 집어넣어서 실행시키고 있었다. 이렇게 되면 시스템에 과부하가 걸리는 것 뿐만 아니라 올바른 개발과정이라고 할 수 없다. 웹 대시보드 개발이기 때문에 데이터 분석은 쥬피터에서, 그 만들어진 가공물로 개발하는 것이기때문에 위와 같은 행위를 해서는 안되는 것이었다. 그래서 기존의 있던 data_init 파일을 아예 삭제하고..

개발/프로젝트 2022.12.26

웹대시보드 프로젝트 7일차 - 이미지 url 에러

EC2 에 오류를 수정하여 무사히 업로드를 마치고 다른 컴퓨터에서 확인하던 도중 이상한 점을 발견하였습니다. 제가 작업한 컴퓨터에서는 이미지가 제대로 화면에 표시가 되는데 다른 컴퓨터에서는 전혀 보이질 않는 현상이 있었습니다. 사진을 주소로 가져오도록 해놓았는데 이 주소에 문제가 생겨서 제대로 보이질 않았고, 제가 작업한 컴퓨터에서는 크롬에서는 보이나 다른 브라우저에서는 똑같은 현상이 있는 것으로보아 크롬은 캐시데이터가 저장되어 있어 그런 것으로 추정해봅니다. 일단 문제를 해결해야했기 때문에 이미지를 직접 png파일로 저장하는 과정을 거쳐 화면에 정상적으로 출력하도록 하였습니다. # image 폴더를 추가하고 사진을 저장하였습니다. # team_url from PIL import Image def tea..

개발/프로젝트 2022.12.26

웹대시보드 프로젝트 - 6일차 (EC2에서 에러 해결하기)

5일차 까지 만든 프로젝트결과물에서 날짜 선택을 데이터의 첫 날짜 부터 마지막 날짜 까지로 선택하게 만들고 홈에서는 어떤 데이터를 이용하였는지 간략하게 적었으며, 사이드바에서 이미지 url에 오류가 있어 수정하였습니다. 그리고 EC2 서버에 업로드 하여 실행을 하였으나 , 실행되지 않고 서버가 다운되는 현상이 발견되었습니다. 원인을 분석하던 도중 games_detail의 데이터와 teams를 merge 함수를 이용해 합쳤을때 오류가 나는 것을 확인하였습니다. EC2 프리티어버전에서는 용량이 크면 서버가 다운 될 수도 있다는 말에 games_detail에 데이터를 절반으로 줄여 다시 실행하니 작동이 되었습니다. 따라서 games_detail 절반값인 games_detail_half.csv 을 만들어 진행하..

개발/프로젝트 2022.12.23

웹대시보드 프로젝트 5일차 - 선수탭 작성 (차트 추가 , 데이터 분석)

5일차에서는 선수탭을 작성하기 시작하였습니다. 원하는 날짜 or 팀 으로 데이터를 분석하고, 차트로 나태내었습니다. - 날짜별 - 평균 , 2점슛 , 3점슛 등등 - 팀별 - 평균, 2점슛 3점슛 등등 1. player.py import streamlit as st import data_init import pandas as pd import matplotlib.pyplot as plt import plotly.express as px import platform from matplotlib import font_manager, rc import numpy as np import plotly.graph_objects as go def player(player_name) : plt.rcParams['axe..

개발/프로젝트 2022.12.23

웹대시보드 프로젝트 4일차

3일차에서 말했던 대로 멀티셀렉트박스를 이용하여 구성을 바꾸고 선수탭을 작업하기 시작하였습니다. 다만 여기서 데이터컬럼명을 rename하는 과정에서 빼먹은 부분이 있어 그부분을 수정하였습니다. 1. app.py import streamlit as st from home import home from team import team from player import player import matplotlib.pyplot as plt import platform from matplotlib import font_manager, rc def main() : plt.rcParams['axes.unicode_minus'] = False if platform.system() == 'Linux': rc('font',..

개발/프로젝트 2022.12.21

웹대시보드 프로젝트 - 3일차(팀 차트추가 및 데이터 가공 , ec2서버에 한글 추가)

3일차에는 데이터를 가공하고 추가로 차트를 넣었습니다. 다만 구성에 깔끔하지 못하고 난잡해보여 4일차에서는 멀티셀렉트박스를 통해 좀 더 깔끔하게 구성을 할려고 합니다. 먼저 ec2 서버에 한글을 추가하는 방법을 알아보겠습니다. 1. 폰트 설치 확인 # ec2 콘솔에서 설치된 폰트가 있는지 확인 fc-list 2. 경로가 있는지 확인 ec2 콘솔에서 python을 입력한 뒤 다음을 입력하여 경로를 확인합니다. import matplotlib print(matplotlib.__version__) # 파이썬 버전확인 print(matplotlib.__file__) # 설치 폴더 경로 확인 print(matplotlib.get_cachedir()) # 캐시 폴더 경로 확인 3.한글폰트 추가 sudo cp -r ..

개발/프로젝트 2022.12.19

웹 대시보드 프로젝트 - 2일차 ( 이미지, 차트로 데이터 표기)

2022-12-16 진행했던 웹 대시보드 프로젝트 2일차 1일차에는 데이터를 가져와 확인하고 수정하는 과정을 거쳤습니다. 먼저 웹 대시보드를 어떻게 구성할지 고민을 하였고 다음과 같이 설정하고 작업을 시작하였습니다. home.py , player.py , team.py 를 만들어 코드를 작성합니다. 1. home.py - 기본적으로 들어왔을 때 보여주기 위해 title과 이미지 하나를 가져왔습니다. import streamlit as st def home() : st.title('Welcome to NBA Data Center') image_url = '이미지' st.image(image_url) 2. player.py - 선수파일에는 비어있는 함수만 만들어놓아 추후 작성하도록 합니다. import st..

개발/프로젝트 2022.12.19

웹대시보드 프로젝트 - 1일차 데이터 선정 및 데이터의 밀림(shift) 수정

웹대시보드 프로젝트 1일차. 1. 데이터 주제 선정 - 주제 : nba 경기 및 선수 스탯으로 웹대시보드 만들기. 2. 데이터 조회 https://www.kaggle.com/datasets/nathanlauga/nba-games?resource=download&select=teams.csv NBA games data Dataset with all NBA games from 2004 season to dec 2020 www.kaggle.com kaggle 에서 nba 데이터를 다운로드 3. 주피터 노트북에서 데이터 확인하기 import pandas as pd df_teams = pd.read_csv('data/teams.csv') df_games = pd.read_csv('data/games.csv') d..

개발/프로젝트 2022.12.14