Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

mplot3d(matplotlib + python)에서 선택한 객체의 속성을 얻는 방법은 무엇입니까?

<시간/>

matplotlib 3d에서 선택한 개체의 속성을 가져오기 위해 다음 단계를 수행할 수 있습니다.

단계

  • Figure 크기를 설정하고 서브플롯 사이와 주변의 패딩을 조정합니다.

  • 새 그림을 만들거나 기존 그림을 활성화하세요.

  • '도끼' 추가 하위 플롯 배열의 일부로 그림에.

  • 무작위 데이터 포인트의 산점도를 만듭니다.

  • *pick_event_method* 함수 바인딩 이벤트 *pick_event*에 .

  • x, y 인쇄 및 z 이벤트 좌표입니다.

  • 그림을 표시하려면 Show()를 사용하세요. 방법.

예시

 matplotlib.pyplot을 npplt.rcParams["Figure.figsize"] =[7.00, 3.50]plt.rcParams["Figure.autolayout"] =Truefig =plt.Figure()ax =fig.add_subplot으로 가져오기 (111, projection='3d')# Scatter plotax.scatter(np.random.rand(10), np.random.rand(10), np.random.rand(10), c=np.random.rand( 10), cmap='핫', 선택기=5, s=100)# pick_event_methoddef pick_event_method(event):ind =event.ind[0] x, y, z =event.artist._offsets3d print(x[ind], y[ind], z[ind])# pick_event_method를 pick_eventfig.canvas.mpl_connect('pick_event', pick_event_method)plt.show()로 연결

출력

다음 출력을 생성합니다 -

mplot3d(matplotlib + python)에서 선택한 객체의 속성을 얻는 방법은 무엇입니까?

이제 플롯에서 개체를 클릭하면 콘솔에 해당 지점의 좌표가 표시됩니다.

 0.29471404722373373 0.7272382336952506 0.5517015408767380.7393059098968329 0.880733225356321 0.207339955795566080.4055966753557102 0.9709122739514328 0.101161035897320840.2781962334047674 0.48531626106129566 0.8573607199598575