2017-03-03 8 views
1

저는 파이썬을 꽤 많이 사용하지만 js에 대해서는 아무것도 모릅니다.mpld3 적응하기 쉬운 예제

왼쪽에 산점도가있는 그림을 그리고 오른쪽에 여러 곡선의 그림을 그려 보겠습니다.

오른쪽의 각 곡선은 왼쪽의 하나의 유일한 점에 해당합니다.

"마우스를 올리면"해당 지점을 강조하고 싶습니다.

그럴 수 있습니까?

누구나 적응할 수있는 예를 들어 줄 수 있습니까?

고맙습니다.

라파엘

편집 :

당신이 바로 thaavik

그러나 나는 mpld3에 대해 아무것도 (아직) 몰라!

순수 파이썬을 예로 들어 보겠습니다.

from pylab import * 

#3 Scattered points 
x=[1,3,7] 
y=[2,6,4] 

#3 Curves (each one associated with a point) 
xx=linspace(0,4*pi,100) 
yy1=sin(xx) 
yy2=cos(xx) 
yy3=linspace(0,1,100) 

#Left panel 
f=figure() 
f.add_subplot(121) 
scatter(x,y) 

#Right panel 
f.add_subplot(122) 
plot(xx,yy1) 
plot(xx,yy2) 
plot(xx,yy3) 

show() 

이미지보기? 오른쪽의 커브 위로 마우스를 가져 가면 왼쪽의 해당 지점이 강조 표시됩니다.

이제는 문제가 분명하다고 생각합니다. 미안하지만 (아직) 올바른 코드를 제안 할 수는 없지만 mpld3을 사용하는 방법을 알고있는 사람이 적응할 수있는 템플릿을 제공 할 수 있다고 생각합니다.

고맙습니다. !

+1

도움이 필요한 특정 코드 스 니펫을 게시하십시오. 당신은 더 나은 응답을 얻을 것이다 "나는 이것을 시도하고 그것은 작동하지 않았다, 왜?" "내 막연한 X를위한 코드를 제공하십시오"보다. – thaavik

답변

0

mpld3은 matplotlib에서 자바 스크립트로 수행하는 작업을 거의 (거의) 변환하므로 마우스 오버 강조는 상자 밖으로 나오지 않습니다.

는 mpld3로 시작하여 조각에 show()을 대체하려면 다음과 .html 파일에

htmlFig = str(mpld3.fig_to_html(f)) 

저장 출력을하면 브라우저에 플롯을 열 수 있습니다. (mpld3.show()도 당신이 원한다면,하지만 내 요점은 당신에게 자바 스크립트 출력을 보여주는)입니다.

글쎄, 그 후에는 mpld3 플러그인을 검색하고 테스트해야합니다.이 플러그인은 기본적으로이 html/js 출력을 수정하여 d3 기능을 추가합니다. 예를 들어,이 플러그인은 https://mpld3.github.io/examples/random_walk.html이며 마우스 오버로 커브를 강조 표시합니다.이 커브는 필요한 것에 가깝습니다. 그래서, 당신이 원하는 플러그인을 찾지 못한다면, 출력 HTML/자바 스크립트 파일에서 약간의 조정을해야합니다.

부분적인 답변을 드려 죄송합니다. 나는 그것이 당신을 올바른 길로 인도 할 수 있기를 바랍니다.

건배!