인프런 커뮤니티 질문&답변

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim

작성한 질문수

파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기

plotly_데이터삽입_질문

작성

·

364

2

안녕하세요 
프로젝트를 하다 plotly를 쓰려고 강사님 강의를 결제했습니다. 
강사님께서는 내장 데이터를 사용하시는데, plotly내장 데이터 말고 csv데이터를 사용해서 plotly를 쓰려고 하는데 데이터 삽입과정에서 문제가 생기는데 어떤 문제인지 알려주시면 감사하겠습니다. 

답변 5

1

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim
질문자

안녕하세요 강사님~ 

어떤 원인이지는 모르겠지만 어제 됬던 코드가 오늘 아침부터 안되 해결하려 노력하다 글을 올립니다. 

아래와 같이 plotly가 갑자기 안되는데 원인을 알 수 있을까요? 

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요.

colab에 설치된 plotly 버전과 강의에 사용한 버전이 차이가 좀 있어요.

아래 코드로 colab에서 재설치를 해주시는데

반드시 런타임 재시작을 한 후에 재설치 해주셔야 최신버전으로 설치됩니다.

# plotly 최신버전을 사용해 주세요. 최신버전이 아닐 때 동작하지 않을 수 있습니다.
!pip install plotly --upgrade
반드시 런타임 재시작 한 후에 재설치 해주세요!
강의에 사용한 버전은 4.9.0 이상의 버전이에요.
최근에 업데이트 된 내용이 많기 때문에 어제 질문 주신 내용의 대부분이 버전 문제로 동작하지 않은 것으로 보여집니다.
꼭 런타임 재시작 후 아래 코드로 재설치 하고 실습해 보세요.  
# plotly 최신버전을 사용해 주세요. 최신버전이 아닐 때 동작하지 않을 수 있습니다.
!pip install plotly --upgrade

1

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim
질문자

wide 데이터를 끝까지 stack over flow랑 강의보며 12시간만에 long 데이터를 바꿔 성공시켰습니다.

박조은님의 프로필 이미지
박조은
지식공유자

해결되었다니 다행이에요.

보통 wide form 을 사용해도 시각화가 되는데 plotly 구 버전에서 wide form 에 대한 지원이 되지 않아요. 

아래의 코드로 plotly버전을 출력했을 때 4.9.0 이상의 버전인지 확인해 보시고 만약 버전이 낮다면 업데이트를 해주세요.

import plotly

plotly.__version__

아래의 방법으로 버전을 업데이트 하실 수 있습니다.

# plotly 최신버전을 사용해 주세요. 최신버전이 아닐 때 동작하지 않을 수 있습니다.

# !pip install plotly --upgrade

1

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요. 도움이 되었다니 다행입니다. 감사합니다.

방법1)

wide 포맷을 사용하실 때는 cufflinks를 통해 사용하면 쉽게 시각화 하실 수 있어요.

인덱스가 x축에 올 데이터로 되어 있다 가정하고(예를 들어 날짜)

df[ohlc_col].iplot()으로 시각화를 하면 wide form 을 long form으로 변경하지 않더라도 바로 시각화 해보실 수 있어요.

cufflinks 는 pandas와 plotly를 강력하게 이어주는 도구 입니다. 6.5 강의를 참고해 보세요. 

아래 제목으로 되어 있는 영상이에요.

섹션 16. (6.5) cufflinks를 통한 pandas와 plotly 생산성 높이기

방법2)

그리고 plotly express 를 사용하는 방법은 섹션6의 3.4 강의를 참고해 보세요.

아래와 같이 wide form 이더라도 colums 의 name을 지정해서 사용하실 수 있습니다.

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim
질문자

답변 감사드립니다 강사님.

두 방법 중 방법2 섹션6의 3.4 강의를 모두 참고하고 똑같이 했더니 저는 사진과 같이 아무런 선이 나오지 않습니다. 
제가 놓치고 있는 부분이 있을까요? 

1

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요.

y축에 컬럼명 리스트를 넣어주셨어요.

y축에는 수치 데이터를 가지는 컬럼명을 직접 작성해 주셔야 합니다.

예를들어 stock 데이터 프레임이 close 라는 컬럼을 갖는다면 y축에는 stock.close 를 넣어주어야 합니다.

섹션6의 3.4 강의와

섹션16의 6.4의 [5/5] 강좌를 참고해 주시면 해당 문제를 해결해 보는데 도움이 될 것 같습니다.

0

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim
질문자

정말 감사드립니다. 컬럼 1개는 시각화 시키는데 성공했습니다. 구매하길 참 잘했습니다.
다만 시각화해야하는 컬럼이 수십개입니다. 사진과 같이 변수명으로 강사님처럼 여러개의 컬럼을 plotly로 구현할 수 없을까요?

----------------------------------------------------------------------------
제가 했던 시도.
melt를 이용해 wide 포맷을 long 포맷으로 바꿔서 plotly를 이용하려 했으나 실패하였습니다.

Seungkyu Kim님의 프로필 이미지
Seungkyu Kim

작성한 질문수

질문하기