반응형

전체 글 121

웹대시 보드 개발(12) aws를 활용하여 ec2서버 만들기

이제 당신이 만든 웹대시보드를 남들에게 인터넷을 통해 보여주려면 당신이 만든 웹대시보드를 누구든 볼수 있게 서버에 개시해놓아야 한다. 이 방법은 aws에서 ec2서버를 통해 할수 있는데 운영체계가 리눅스여서 윈도우즈와 같은 gui 인터페이스가 아닌 텍스트 인터페이스로써 굉장히 까다롭고 복잡한 형식으로 진행된다. 다행히 github에서 만든 코드를 그대로 옮겨서 리눅스에서 실행만 하면 되기 때문에 너무 까다롭게는 생각할 필요는 없다. 잘보고 따라하자 우선 aws에서 ec2 서버를 만들어야 한다. 1.aws에서 ec2서비스를 검색해서 클릭한다. 2. 클릭하면 ec2 대시보드가 화면이 나온다. 여기서 인스턴스 시작을 클릭한다. 3. 인스턴스 서버 이름을 기억이 잘나는 이름으로 지어준다. 4. 운영체재는 Ama..

웹대시보드 개발(11) 주피터노트북에서 학습한 인공지능을 스트림릿에서 사용하는 방법

이제 스트림릿에서 파이썬환경에서 개발한 인공지능을 스트림릿에 올리는 작업을 해보겠다. 기존에 파이썬에서 인공지능을 작업하는 방법은 생략하겠다 대신 인공지능편에 있는 내용을 참고 바란다. 주피터 노트북등에서 작업한 인공지능을 내보내려면 다음과 같은 함수로 내보낸다. #내보내기 함수 호출 import joblib #인공지능 변수가 regressor인 코드를 pkl파일로 내보내기 joblib.dump(regressor,'regressor.pkl') 이렇게 내보낸 데이터는 자신의 환경이 있는 폴더 안에 pkl파일로 보관된다. github에 올릴꺼니 왠만하면 github 폴더에 저장하는것이 좋다. 이제 이 파일을 github desktop을 통해 github 사이트로 내보내자 그럼 github desktop에서 ..

웹대시보드 개발(10) 스트림릿에서 차트 그리기(2)

이번시간은 지난 시간에 이어 차트를 plotly함수로 그리는 방법을 알아보겠다. plotly함수와 기존 차트함수와의 차이점은 확대축소로 유저 친화적인 화면과 영역을 마우스로 가져다 대면 어떤 데이터가 들어갔는지 표시해준다. 1) 바차트 # 스트림릿 라이브러리를 사용하기 위한 임포트문 작성 import streamlit as st import numpy as np import pandas as pd #plotly 라이브러리 import plotly.express as px #altair 라이브러리 import altair as alt def main() : df4 = pd.read_csv('streamlit_data/prog_languages_data.csv') st.dataframe(df4.head(3)..

웹대시보드 개발(9) 스트림릿에서 차트 그리기(1)

스트림릿에서도 차트를 그릴수 있다. 기존 판다스에서 그렸던 차트는 물론 streamlit만의 차트가 더 존재한다. 1) scatter 차트 # 스트림릿 라이브러리를 사용하기 위한 임포트문 작성 import streamlit as st import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sb # 웹 대시보드 프레임워크인, 스트림릿은 # main 함수가 있어야 한다. def main() : st.title('차트 그리기 1') df = pd.read_csv('streamlit_data/iris.csv') st.dataframe(df.head()) # sepal_length와 sepal_width 의 관..

웹대시 보드 개발(8) sidebar 메뉴 만들기

웹페이지를 보면 sidebar로 메뉴가 나눠져 있는 웹페이지를 쉽게 찾아 볼수 있다. 단순히 보기 좋게 메뉴를 나눠 놓은것이 아닌 메뉴마다 함수를 호출 시켜 동작하기 때문에 코드가 자칫 길어 지는것을 방지 하는 효과가 까지 있다. import streamlit as st #다른 파일의 함수를 호출하고 싶으면, 함수를 임포트 한다. from app_home import run_home_app from app_eda import run_eda_app from app_ml import run_ml_app def main() : st.title('파일 분리 앱') #Exploratory Data Analysis menu = ['Home','EDA','ML','About'] choice = st.sidebar.s..

웹대시 보드 개발(7) 스트림릿의 다양한 UI 함수(4)

이번 시간에는 스트림릿의 다양한 UI함수중 입력 함수에 관해 알아보겠다. 1) image 함수 streamlit 에 이미지를 올릴때 사용된다. 이미지를 올릴땐 이미지 주소를 복사하면 올리기 편하다. import streamlit as st from PIL import Image def main() : #이미지 올리는법 img = Image.open('streamlit_data/image_03.jpg') print(img) st.image(img) st.image(img, use_column_width=True) img_url='인터넷 이미지 주소' st.image (img_url) if __name__ == '__main__' : print(__name__) main() 2) video 함수 동영상을 올..

웹대시보드 개발(6) 스트림릿의 다양한 UI 함수(3)

스트림릿에서 웹브라우저로 화면을 띄우는 방법을 알았지만 화면에 '버튼'이 없기 때문에 여러가지 버튼을 생성하는 함수들을 알아보겠다. 1) 기본 버튼 기본 버튼은 버튼을 클릭만하면 결과가 나오겠끔 하는 함수이다. import streamlit as st #버튼을 클릭하면, 데이터프레임이 보이도록 만들기 name = 'Mike' #이름인 Mike를 버튼을 통해 대소문자로 표현 if st.button('대문자로') : st.text(name.upper()) if st.button('소문자로') : st.text(name.lower()) if __name__ == '__main__' : main() 대문자,소문자 버튼이 눌리면 사람 이름이 대문자,소문자로 바뀌게 된다. 2) 셀럭트 박스 여러개 선택지 중에 하나..

웹대시보드 개발(5) 스트림릿의 다양한 UI 함수(2)

스트림릿은 판다스와 같이 써서 데이터프레임도 나타낼수 있다. 코드로 알아보자 #판다스의 데이터프레임을, 웹화면으로 보여주는 방법 import streamlit as st import pandas as pd # UI 요소들을 처리하는 방법 def main(): st.title('아이리스 꽃 데이터') df=pd.read_csv('streamlit_data/iris.csv') st.dataframe(df) species = df['species'].unique() st.text('아이리스 꽃은'+species+'으로 되어있다.') if __name__ == '__main__' : main() 아이리스 꽃데이터를 가져올수가 있다.

웹대시 보드 개발(4) 스트림릿의 다양한 UI 함수(1)

웹대시 보드용으로 쓰이는 스트림릿 라이브러리의 함수에 대해 알아보자 1) title,header,subhear,text 각각 title은 제목을 나타내는 함수, header는 강조를 나타내고,subheader는 준 강조를 나타낸 함수이다. 마지막으로 text 함수는 텍스트 문장을 나타내는 함수이다. 함수 4개를 한꺼번에 써놨지만 의미는 길지 않은 함수들이라 한꺼번에 써놨다. import streamlit as st def main() : st.title('웹 대시보드') st.text('웹 대시보드 개발하기') st.header('이 영역은 헤더 영역') st.subheader('이 영역은 서브 헤더 영역') if __name__ == '__main__' : main() 이렇게 웹브라우저에 나오게 된다...

웹대시보드 개발(2) 스트림릿 설치방법

웹대시보드를 본격적으로 하기 위해서 사용할 소프트웨어는 다 설치했고 이제 툴만 설치하면 된다. 아나콘다 프롬프트를 열고 자신의 가상환경에 들어가 pip install streamlit 이 코드를 치고 엔터를 누른다. 그럼 설치가 되고 설치가 완료되면 아나콘다 프롬프트를 나오고 visual studio code를 연다. 열고 newfile 버튼을 누르고 파이썬 문으로 # 스트림릿 라이브러리를 사용하기 위한 임포트문 작성 import streamlit as st # 웹 대시보드 프레임워크인, 스트림릿은 # main 함수가 있어야 한다. def main() : st.title ('헬로우') st.title ('개발 프로젝트') if __name__ == '__main__' : print(__name__) ma..