簡體   English   中英

Matplotlib 自定義樣式:不同的刻度顏色和刻度標簽顏色

[英]Matplotlib custom styles: different tick color and tick label color

這是對這個問題的一些跟進,作者想要不同的刻度和刻度標簽顏色。 我想將這些設置保存為 Matplotlib 樣式。 但是在 Matplotlib 樣式中,我只能設置刻度顏色(請參閱下面的 xtick 設置),它同時更改刻度和刻度標簽顏色。

xtick.major.size     : 4      # major tick size in points
xtick.minor.size     : 4      # minor tick size in points
xtick.major.pad      : 6      # distance to major tick label in points
xtick.minor.pad      : 6      # distance to the minor tick label in points
xtick.color          : 555555      # color of the tick labels                   <---
xtick.labelsize      : medium # fontsize of the tick labels
xtick.direction : in # direction: in or out

在我的公司,我們有灰色勾號和黑色勾號標簽,我怎樣才能為我的所有地塊實現這一點?

感謝您的幫助庫斯科

我和你有完全一樣的問題。

我已經向 Matplotlib ( https://github.com/matplotlib/matplotlib/issues/17659 ) 提交了一個錯誤報告並寫了一個 PR 來解決這個問題 ( https://github.com/matplotlib/matplotlib/pull/17661 ) . 因此,從 Matplotlib v3.4.0(尚未發布,但現在可在 master 分支上使用)開始,此問題已修復。

以前, xtick.color用於定義刻度顏色和標簽顏色。 現在可以使用xtick.labelcolor獨立設置標簽顏色。 它默認為“繼承”,它將從xtick.color獲取值。 ytick.[label]color 例如,要將刻度設置為淺灰色,將刻度標簽設置為黑色,可以在腳本中使用以下代碼:

import matplotlib as mpl

mpl.rcParams['xtick.labelcolor'] = 'lightgrey'
mpl.rcParams['xtick.color'] = 'black'
mpl.rcParams['ytick.labelcolor'] = 'lightgrey'
mpl.rcParams['ytick.color'] = 'black'

或者通過將以下行添加到 matplotlib rc 文件或 matplotlib 樣式文件:

xtick.labelcolor : lightgrey
xtick.color      : black
ytick.labelcolor : lightgrey
ytick.color      : black

我希望這可以幫助別人!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM