Saya memiliki bilah horizontal matplotlib yang digambar sebagai berikut:
import matplotlib.pyplot as plt
from numpy import *
from scipy import *
bars = arange(5) + 0.1
vals = rand(5)
print bars, vals
plt.figure(figsize=(5,5), dpi=100)
spines = ["bottom"]
ax = plt.subplot(1, 1, 1)
for loc, spine in ax.spines.iteritems():
if loc not in spines:
spine.set_color('none')
# don't draw ytick marks
#ax.yaxis.set_tick_params(size=0)
ax.xaxis.set_ticks_position('bottom')
plt.barh(bars, vals, align="center")
plt.savefig("test.png")
Ini menghasilkan gambar ini:
Saya hanya ingin menunjukkan sumbu x, yang bekerja menggunakan duri, tapi sekarang memplot tanda centang gantung ini untuk sumbu kanan. Bagaimana cara menghapusnya? Saya ingin menjaga tanda centang y di sisi kiri plot dan membuatnya menghadap keluar (arah berlawanan dengan bilah). Saya tahu bahwa saya dapat menghapus tanda centang sama sekali dengan menghapus komentar pada baris:
#ax.yaxis.set_tick_params(size=0)
tetapi saya ingin menyimpan tanda ytick hanya di sisi kiri. Terima kasih.
EDIT: Saya mencapai solusi setelah beberapa kali percobaan dan kesalahan meskipun saya yakin solusi saya mungkin bukan cara terbaik untuk melakukannya, jadi harap beri tahu saya pendapat Anda. saya menemukan bahwa saya dapat melakukan:
ax.spines["left"].axis.axes.tick_params(direction="outward")
untuk mengatur arah tanda centang. untuk menghilangkan tanda centang sumbu y kanan, saya menggunakan:
ax.yaxis.set_ticks_position("left")