본문 바로가기

728x90
반응형

연구개발/데이터시각화

(25)
데이터 시각화 프로그래밍17 - 3D 플로팅1 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍17 - 3D 플로팅1 Matplotlib은 3차원 좌표에 플로팅 해주는 다양한 기능들을 제공하고 있습니다. 이번 포스팅에서는 다음과 같은 내용에 대해 살펴봅니다. 3D 라인 그리기3D 산점도 그리기3D 와이어 프레임 그리기 3D 곡선 그리기3D 플로팅을 하려면 3차원 좌표를 설정하는 것이 제일 먼저 해야할 일입니다. 아래 코드는 3차원 좌표에 Parametric 곡선을 그리는 예입니다. 코드의 주요부분만 살펴보면, >>> mpl.rcParams['legend.fontsize'] = 10 레전드의 폰트 크기를 10으로 설정해줍니다. >>> ax = fig.gca(projection='3d') 플로팅 하려는 좌표를 3D로 지정합니다. 이제 ax는 ..
데이터 시각화 프로그래밍16 - Matplotlib 애니메이션 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍16 - Matplotlib 애니메이션으로 라이브 그래프 그리기 Matplotlib은 애니메이션 기능을 제공하여 라이브 그래프를 그릴 수 있게 해줍니다. 아래의 코드를 보시죠~ 이 코드는 삼각함수 사인그래프를 오른쪽 방향으로 움직이게 합니다. 자, 아래의 수학 함수를 생각해봅니다. 이 함수는 주기가 1인 사인 곡선을 양수 t의 값을 연속적으로 증가시키면 사인 곡선 전체를 오른쪽으로 움직이게 하는 효과를 발휘합니다. 이는 고등학교 수학을 충실히 학습한 분들은 모두 알 수 있을 겁니다. 위 코드는 이 함수를 Matplotlib 애니메이션으로 시각화하는 코드입니다. Matplotlib에서 애니메이션을 수행하는 함수는 FuncAnimation()입니다...
데이터 시각화 프로그래밍15 - 서브플롯 활용하기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍15 - 서브플롯 활용하기 이번에는 서브플롯을 활용하여 한 화면에 여러가지 그래프를 보는 방법에 대해 살펴봅니다.여태까지 다룬 소스코드는 주가트렌드, 주가캔들 그리고 미국 출생아수에 대한 그래프를 출력하는 것이었죠.이들 세 가지 그래프를 서브플롯을 이용해 그려봅니다. 서브플롯은 아래의 코드로 3개로 구분합니다. >>> ax1 = plt.subplot2grid((2, 2), (0, 0))>>> ax2 = plt.subplot2grid((2, 2), (0, 1))>>> ax3 = plt.subplot2gird((2, 2), (1, 0), colspan=2) ax1에는 주가트렌드 그래프를, ax2에는 주가캔들 그래프를, ax3에는 미국 출생아수 그래프..
데이터 시각화 프로그래밍14 - 그래프에 주석 달기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍14 - 그래프 또는 차트에 주석 달기 데이터를 분석하여 그래프나 차트로 보여줄 때 중요한 이벤트나 이슈 등이 있다면 이를 텍스트나 화살표로 표시하면 사용자에게 보다 친절함을 제공해줄 수 있습니다. 13편에서 활용한 데이터는 1880년 이후로 미국에서 태어난 남자아이, 여자아이 출생수를 그래프로 나타낸 것입니다. 그래프를 보면 1958년 정도에 피크를 보인 후 점차 출생자수가 줄어드는 것을 알 수 있습니다. 1958년에 즈음에 태어난 세대들을 우리나라에서는 베이비붐 세대라고 하는데 미국에서도 마찬가지네요. 차트에 이 부분을 '베이비붐'이라고 표시를 해보도록 하겠습니다. 13편의 코드와 달라진 부분은 하나입니다. >>> ax.annotate('베이..
데이터 시각화 프로그래밍13 - Matplotlib 스타일 적용하기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍13 - Matplotlib 스타일 적용하기 Matplotlib은 그래프를 다양한 스타일로 출력할 수 있게 해줍니다. 윈도우 커맨드 창을 열고 파이썬을 실행한 후 아래의 코드를 입력하고 돌려봅니다. >>> from matplotlib import style>>> print(style.available) 화면에 출력되는 것은 Matplotlib에서 사용 가능한 스타일입니다. seaborn-dark-paletteseaborn-darkgridseaborn-whitegridseaborn-colorblineseaborn-posterseaborn-paperseaborn-ticksseaborn-notebookseaborn-pastelseaborn-deepse..
데이터 시각화 프로그래밍12 - 주가 캔들 그리기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍12 - 주가 캔들 그리기 이왕 Matplotlib을 응용하는 예로 주식 가격을 예로 들었으므로, 주가 캔들을 그리는 방법에 대해 알아겠습니다. 주식에 전혀 관심 없는 분들도 있겠지만 주식을 조금이라도 해본 분들은 주가 캔들에 대해 많이 알고 있을거라 생각합니다. 흔히 주가 캔들을 양봉, 음봉으로 부르기도 하는데, 우리나라 주식 시장에서 빨간색은 좋은 것이고, 파란색은 별로 안좋은 것이죠. 무슨 말인고 하면 빨간색은 주가가 전날에 비해 올라갔다는 말이고, 파란색은 전날에 비해 내려갔다는 의미입니다. 먼저, 11편에서 다루었던 코드를 약간 수정하여 삼성전자 주가의 1달치를 가져와서 주가 캔들을 그려보는 코드를 작성합니다. 코드의 주요 부분만 살펴봅..
데이터 시각화 프로그래밍11 - Spine과 기준선 정의하기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍11 - Spine과 임의의 수평선을 기준으로 상하 부분 색칠하기 Spine은 영어로 척추를 의미합니다. 척추란 동물이나 사람의 몸을 지탱하는 중요한 역할을 하죠. 플로팅에서 Spine이란 좌표의 테두리를 굵게 표시하는 것으로 생각하면 됩니다. 이번 포스팅에서는 Matplotlib으로 Spine을 표시하는 방법을 살펴보겠습니다. 그리고 또 살펴볼 것은 다음과 같습니다.주가 그래프를 볼 때 어떤 가격을 기준으로 윗부분과 아랫부분의 영역을 다른 색상으로 칠하면 보기에 매우 직관적일 것입니다. 예를 들어 삼성전자 주가 그래프에서 125만원 아랫쪽은 파란색, 윗쪽은 빨간색으로 칠하게 되면 120만원보다 주가가 낮았을 때와 높았을 때를 구분하여 보기 쉬울..
데이터 시각화 프로그래밍10 - 격자 표시 및 그래프를 색으로 채우기 파이썬 Matplotlib을 이용한 데이터 시각화 프로그래밍10 - 격자 표시 및 x축과 그래프로 둘러싸인 부분 색으로 채우기 8편의 코드에서 야후의 Open API를 이용해 주식정보를 받아오는 코드를 별도의 파일 stockreader.py로 만들어서 다른 코드에서 재사용할 수 있도록 했습니다. 첨부로 파일을 올려 두었으니 필요하신 분은 사용하세요~ stockreader.py의 getStockData() 함수를 재사용하게 될 것이며, 이 함수의 인자는 2개로 하나는 종목코드, 나머지 하나는 주식 데이터를 뽑을 기간입니다. 뽑을 기간은 현재 기준으로 삼성전자 주가 데이터을 1년, 3년, 1달, 3달치를 각각 얻고 싶으면 아래와 같이 호출하면 됩니다. # 현재기준 1년치, 3년치 삼성전자 주가 데이터를 가져..

728x90
반응형