matplotlib zorder 의 요소에 polar plot 중첩에 직교 줄거리
-
21-12-2019 - |
문제
나는 데 도움이 zorder 의 요소 polar plot 중첩에 직교 줄거리입니다.
다음 예제를 살펴보십시오:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.scatter(1, 1, marker='*', s=2000, c='r', zorder=2)
ax2 = fig.add_axes(ax.get_position(), frameon=False, polar=True)
ax2.scatter(1., 0.1, marker='*', s=1000, c='b', zorder=1)
plt.xlim(0, 2)
plt.ylim(0, 2)
plt.show()
결과는:
보 matplotlib
을 무시 zorder
의 분산 도표를 선택할 수 있습니다.하게 될 것으로 예상 레드 스타에 있어 최고의 푸른 하나입니다.
자세히 설명해주시겠 제가 뭘 잘못하고 있나?
내가 발견 하나의 질문, 는 종류의 비슷한 나지만,문제 ticklines 과 격자를 대신 합니다.어쩌면 그것은 동일한 버그?
P.S.나는 Linux 를 실행하는 x86_64Python2.7.6 및 matplotlib1.3.1.
해결책
문제는 설정의 z 순서 마크가 서로 다른 축에 ax
고 ax2
하지만 이후 ax2
큰 z-기 위해 모든 음모에서 그것은 수의 상단에 ax
.하나의 솔루션이 될 수 있을 높게 설정 z-기 ax
그러나 당신이 필요하 배경이 투명한 또는 세트 frameon=False
(그리고 그것은 어쩌면이 바람직하지 않의 경우),이의 데모입니다 무슨 말인:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.scatter(1, 1, marker='*', s=2000, c='r', zorder=2)
ax2 = fig.add_axes(ax.get_position(), frameon=False, polar=True)
ax2.scatter(1., 0.1, marker='*', s=1000, c='b', zorder=1)
ax.set_zorder(3)
ax.patch.set_facecolor('none')
#ax.patch.set_visible(False)
plt.xlim(0, 2)
plt.ylim(0, 2)
plt.show()
줄거리:
제휴하지 않습니다 StackOverflow