第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

x 刻度和標(biāo)簽的自定義定位

x 刻度和標(biāo)簽的自定義定位

犯罪嫌疑人X 2023-12-09 15:50:35
對(duì)于簡(jiǎn)單的條形圖,我希望一些 x 刻度標(biāo)簽位于 x 軸下方(對(duì)于正 y 值),而其他標(biāo)簽位于 x 軸上方(對(duì)于負(fù) y 值)。我看到,根據(jù)文檔,可以將字符串作為參數(shù)傳遞以matplotlib.axes.Axes.set_xticklabel更改垂直對(duì)齊方式,但這是一個(gè)籠統(tǒng)的應(yīng)用程序。如何實(shí)現(xiàn)特定 x-tick 標(biāo)簽的任意定位?
查看完整描述

1 回答

?
汪汪一只貓

TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個(gè)贊

您可以修改 for 循環(huán)中標(biāo)簽的位置/旋轉(zhuǎn)。最初,我認(rèn)為更改旋轉(zhuǎn)點(diǎn)就足夠了,但標(biāo)簽固定在刻度線的尖端,因此結(jié)果不是最佳的。


這是我的代碼。您可能需要調(diào)整 y 位置的正負(fù)以獲得所需的對(duì)齊方式:


N = 10

h = np.linspace(-10,10,N)

xticks = [f'test #{n}' for n in range(N)]


fig, ax = plt.subplots()

ax.spines['bottom'].set_position('zero')

ax.bar(range(N),h)

ax.set_xticks(range(N))

ax.set_xticklabels(xticks)


for i,(g,t) in enumerate(zip(h,ax.get_xticklabels())):

    if g<0:

        t.set_ha('left')

        t.set_va('bottom')

    else:

        t.set_ha('right')

        t.set_va('top')

    t.set_rotation_mode('anchor')

    t.set_rotation(45)

    t.set_transform(ax.transData)

    t.set_position((i,0))

https://img1.sycdn.imooc.com/65741c71000198f605920440.jpg

查看完整回答
反對(duì) 回復(fù) 2023-12-09
  • 1 回答
  • 0 關(guān)注
  • 157 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)