matplotlib 객체 지향 인터페이스를 사용하여 seaborn으로 플롯팅
사용하는 것을 매우 선호합니다.matplotlib
OOP 스타일:
f, axarr = plt.subplots(2, sharex=True)
axarr[0].plot(...)
axarr[1].plot(...)
이를 통해 여러 수치와 하위 그림을 더 쉽게 추적할 수 있습니다.
질문:.이렇게 해초를 사용하는 방법은?아니면 이 예제를 OOP 스타일로 변경하는 방법은 무엇입니까?구분하는 방법seaborn
다음과 같은 함수를 표시합니다.lmplot
어떤.Figure
아니면Axes
계획은?
어떤 바다본 기능을 쓰느냐에 따라 조금씩 다릅니다.
Seaborn의 플롯 함수는 크게 두 가지 유형으로 구분됩니다.
- 다음을 포함한 "축 수준" 기능
regplot
,boxplot
,kdeplot
, 그 외 여러가지 - 다음을 포함한 "수치 수준" 기능
relplot
,catplot
,displot
,pairplot
,jointplot
그 밖에 한두 명
첫번째 그룹은 명시적인 방법을 취함으로써 식별됩니다.ax
논쟁하고 돌려주기Axes
물건.이것이 시사하는 바와 같이, 당신은 그것들을 "객체 지향" 스타일로 사용할 수 있습니다.Axes
그들에게:
f, (ax1, ax2) = plt.subplots(2)
sns.regplot(x, y, ax=ax1)
sns.kdeplot(x, ax=ax2)
축 수준 함수는 다음과 같은 위치에만 그려집니다.Axes
피규어를 건드리는 일이 없기 때문에 오브젝트 중심의 매트플롯립 스크립트에서 완벽하게 행복하게 공존할 수 있습니다.
두 번째 함수 그룹(Figure-level)은 결과 그림에 항상 "의미 있는" 방식으로 구성되는 여러 축이 포함될 수 있다는 사실로 구별됩니다.즉, 함수가 그림을 완전히 제어할 수 있어야 하므로 그림을 그릴 수 없습니다.lmplot
이미 존재하는 것에.함수를 호출하면 항상 그림을 초기화하고 그 그림에 대해 그림을 설정할 수 있습니다.
하지만, 일단 전화를 걸면lmplot
, 유형의 개체를 반환합니다.이 개체에는 그림의 구조에 대해 조금이라도 알고 있는 결과 그림에 대해 작업할 수 있는 몇 가지 방법이 있습니다.또한 기본적인 그림과 축 배열을 노출합니다.FacetGrid.fig
그리고.FacetGrid.axes
논쟁. 그.jointplot
기능은 매우 비슷하지만 물체를 사용합니다.따라서 이러한 기능을 객체 지향적인 맥락에서 사용할 수 있지만, 모든 사용자 지정은 기능을 호출한 후에 이루어져야 합니다.
언급URL : https://stackoverflow.com/questions/23969619/plotting-with-seaborn-using-the-matplotlib-object-oriented-interface
'programing' 카테고리의 다른 글
WordPress admin: 페이지 속성에 초안 페이지 표시 부모 페이지 드롭다운 (0) | 2023.11.05 |
---|---|
EnumProcesses() 대 CreateTool help32Snapshot() (0) | 2023.11.05 |
javascript를 사용하여 로케일 단기 날짜 형식 가져오기 (0) | 2023.11.05 |
Can C++ array end at memory boundary? (0) | 2023.11.05 |
어레이를 결합할 때 정의되지 않은 속성 '푸시'를 읽을 수 없습니다. (0) | 2023.11.05 |