matplotlib.scale#

スケールは、対数スケーリングなど、軸上のデータ値の分布を定義します。これらは のサブクラスとして定義されていScaleBaseます。

axes.Axes.set_xscaleドキュメントのスケールの例も参照してください。

カスタム スケールを定義する完全な例については、カスタム スケールを参照してください。

AxisMatplotlib は、両方を同時に操作する分離不可能な変換もサポートして います。これらは射影と呼ばれ、 で定義されてい matplotlib.projectionsます。

クラス matplotlib.scale。AsinhScale ( axis , * , linear_width = 1.0 , base = 10 , subs = 'auto' , ** kwargs ) [source] #

拠点:ScaleBase

逆双曲線正弦 (asinh) に基づく準対数スケール

ゼロに近い値の場合、これは基本的に線形スケールですが、大きな値 (正または負) の場合、漸近的に対数になります。これらの線形レジームと対数レジームの間の移行はスムーズで、SymmetricalLogScale("symlog") スケールとは対照的に、関数勾配に不連続性はありません。

具体的には、軸座標の変換\(a\)\(a \rightarrow a_0 \sinh^{-1} (a / a_0)\)どこ\(a_0\) 変換の線形領域の有効幅です。その領域では、変換は \(a \rightarrow a + \mathcal{O}(a^3)\). の大きな値の場合\(a\)変換は次のように動作します \(a \rightarrow a_0 \, \mathrm{sgn}(a) \ln |a| + \mathcal{O}(1)\).

ノート

この API は暫定的なものであり、初期のユーザー フィードバックに基づいて将来改訂される可能性があります。

パラメータ:
linear_width float、デフォルト: 1

スケール パラメータ (別の場所では\(a_0\)) 準線形領域の範囲と、それを超えると変換が漸近対数になる座標値を定義します。

基本整数、デフォルト: 10

対数スケールで目盛りの位置を丸めるために使用される基数。これが 1 未満の場合、丸めは最も近い 10 の累乗の整数倍になります。

int のサブシーケンス

マイナー ティックに使用される基数の倍数。「auto」に設定すると、組み込みのデフォルトが使用されます。たとえば、base=10 の場合は (2, 5) です。

auto_tick_multipliers = {3: (2,)、4: (2,)、5: (2,)、8: (2, 4)、10: (2, 5)、16: (2, 4, 8)、64: (4, 16), 1024: (256, 512)} #
get_transform ( ) [ソース] #

Transformこのスケールに関連付けられたオブジェクトを返します。

プロパティ linear_width #
name = 'asinh' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。AsinhTransform ( linear_width ) [ソース] #

拠点:Transform

で使用される逆双曲線正弦変換AsinhScale

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。FuncScale (関数) [ソース] #

拠点:ScaleBase

軸に対してユーザー指定の関数を使用して任意のスケールを提供します。

パラメータ:
Axis

スケールの軸。

関数(呼び出し可能、呼び出し可能)

スケールの順関数と逆関数の 2 タプル。forward 関数は単調でなければなりません。

両方の関数に署名が必要です。

def forward(values: array-like) -> array-like
get_transform ( ) [ソース] #

FuncTransformこのスケールに関連付けられた を返します。

名前= '関数' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。FuncScaleLog (関数ベース= 10 ) [ソース] #

拠点:LogScale

軸に対してユーザー指定の関数を使用して任意のスケールを指定し、対数軸を配置します。

パラメータ:
matplotlib.axis.Axis

スケールの軸。

関数(呼び出し可能、呼び出し可能)

スケールの順関数と逆関数の 2 タプル。forward 関数は単調でなければなりません。

両方の関数に署名が必要です。

def forward(values: array-like) -> array-like
基本フロート、デフォルト: 10

スケールの対数底。

プロパティ ベース#
get_transform ( ) [ソース] #

Transformこのスケールに関連付けられた を返します。

名前= '機能ログ' #
クラス matplotlib.scale。FuncTransform (フォワードインバース) [ソース] #

拠点:Transform

順変換と逆変換に任意の関数を使用する単純な変換。

パラメータ:
前方呼び出し可能

変換の forward 関数。この関数には逆関数が必要であり、最適な動作のために単調でなければなりません。署名が必要です。

def forward(values: array-like) -> array-like
呼び出し可能

forward 関数の逆。として署名しforwardます。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine () [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。InvertedAsinhTransform ( linear_width ) [ソース] #

拠点:Transform

で使用される双曲線サイン変換AsinhScale

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。InvertedLogTransform (ベース) [ソース] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。InvertedSymmetricalLogTransform ( base , linthresh , linscale ) [source] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。LinearScale () [ソース] #

拠点:ScaleBase

デフォルトの線形スケール。

get_transform ( ) [ソース] #

線形スケーリングの変換を返します。これは IdentityTransform.

name = '線形' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。LogScale ( axis , * , base = 10 , subs = None , nonpositive = 'clip' ) [source] #

拠点:ScaleBase

標準的な対数スケール。正の値のみをプロットするように注意してください。

パラメータ:
Axis

スケールの軸。

基本フロート、デフォルト: 10

対数の底。

非正{'clip', 'mask'}、デフォルト: 'clip'

正でない値の動作を決定します。これらは、無効としてマスクするか、非常に小さい正の数にクリップすることができます。

int のsubsシーケンス、デフォルト: なし

各主目盛の間に副目盛を配置する場所。たとえば、log10 スケールでは、各主要目盛りの間に対数間隔で 8 つの小目盛りを配置します。[2, 3, 4, 5, 6, 7, 8, 9]

プロパティ ベース#
get_transform ( ) [ソース] #

LogTransformこのスケールに関連付けられた を返します。

limit_range_for_scale ( vmin , vmax , minpos ) [ソース] #

ドメインを正の値に制限します。

名前= 'ログ' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。LogTransform ( base , nonpositive = 'clip' ) [source] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

クラス matplotlib.scale。LogisticTransform (非正= 'マスク' ) [ソース] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

ロジスティック変換 (基数 10)

クラス matplotlib.scale。LogitScale ( axis , nonpositive = 'mask' , * , one_half = '\\frac{1}{2}' , use_overline = False ) [source] #

拠点:ScaleBase

0 と 1 の間のデータのロジット スケール。両方とも除外されます。

このスケールは、0 と 1 に近い対数スケールに似ており、0.5 付近でほぼ線形です。間隔 ]0、1[ を ]-infty、+infty[ にマッピングします。

パラメータ:
matplotlib.axis.Axis

現在未使用です。

非正{'マスク', 'クリップ'}

開区間 ]0, 1[ を超える値の動作を決定します。それらは無効としてマスクされるか、0 または 1 に非常に近い数値にクリップされます。

use_overline bool、デフォルト: False

1 に近い確率の標準表記 (1-x) の代わりに生存表記 (overline{x}) の使用を示します。

one_half str、デフォルト: r"frac{1}{2}"

目盛フォーマッタが 1/2 を表すために使用する文字列。

get_transform ( ) [ソース] #

LogitTransformこのスケールに関連付けられた を返します。

limit_range_for_scale ( vmin , vmax , minpos ) [ソース] #

ドメインを 0 ~ 1 (除外) の値に制限します。

名前= 'ロジット' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。LogitTransform (非正= 'マスク' ) [ソース] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

ロジット変換 (基数 10)、マスクまたはクリップ

クラス matplotlib.scale。ScaleBase () [ソース] #

拠点:object

すべてのスケールの基本クラス。

スケールは、単一の次元で機能する分離可能な変換です。

サブクラスはオーバーライドする必要があります

name

スケールの名前。

get_transform()

Transformデータ座標をスケーリングされた座標に変換する を返すメソッド。この変換は可逆である必要があります。たとえば、マウスの位置をデータ座標に戻すことができます。

set_default_locators_and_formatters()

Axis このスケールを使用する のデフォルトのロケーターとフォーマッターを設定するメソッド。

limit_range_for_scale()

軸の範囲を許容値に「固定」するオプションの方法。たとえば、対数スケールの軸を正の値に制限します。

新しいスケールを構築します。

ノート

次の注意事項は、スケールの実装者向けです。

後方互換性の理由から、scale はAxis 最初の引数としてオブジェクトを取ります。ただし、この引数は使用しないでください。単一のスケール オブジェクトを複数の Axises で同時に使用できるようにする必要があります。

get_transform ( ) [ソース] #

Transformこのスケールに関連付けられたオブジェクトを返します。

limit_range_for_scale ( vmin , vmax , minpos ) [ソース] #

このスケールでサポートされているドメインに限定された範囲vminvmaxを返します (存在する場合)。

minposは、データ内の正の最小値でなければなりません。これは、対数スケールで最小値を決定するために使用されます。

set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。SymmetricalLogScale ( axis , * , base = 10 , linthresh = 2 , subs = None , linscale = 1 ) [source] #

拠点:ScaleBase

対称対数スケールは、原点から正方向と負方向の両方で対数です。

ゼロに近い値は無限大に近づく傾向があるため、線形のゼロ付近の範囲が必要です。パラメータ linthreshを使用すると、ユーザーはこの範囲のサイズを指定できます (- linthreshlinthresh )。

パラメータ:
基本フロート、デフォルト: 10

対数の底。

linthresh float、デフォルト: 2

プロットが線形である範囲を定義します。これにより、プロットがゼロ付近で無限大になるのを回避できます。(-x, x)

int のサブシーケンス

各主目盛の間に副目盛を配置する場所。たとえば、log10 スケールでは、各主要目盛りの間に対数的に間隔をあけた 8 つの小目盛りを配置します。[2, 3, 4, 5, 6, 7, 8, 9]

リンスケールフロート、オプション

これにより、対数範囲に対して線形範囲を拡大できます。その値は、線形範囲の半分ごとに使用するディケード数です。たとえば、 linscale == 1.0 (デフォルト) の場合、線形範囲の正と負の半分に使用されるスペースは、対数範囲の 1 ディケードに等しくなります。(-linthresh, linthresh)

新しいスケールを構築します。

ノート

次の注意事項は、スケールの実装者向けです。

後方互換性の理由から、scale はAxis 最初の引数としてオブジェクトを取ります。ただし、この引数は使用しないでください。単一のスケール オブジェクトを複数の Axises で同時に使用できるようにする必要があります。

プロパティ ベース#
get_transform ( ) [ソース] #

SymmetricalLogTransformこのスケールに関連付けられた を返します。

プロパティ リンスケール#
プロパティ linthresh #
名前= 'symlog' #
set_default_locators_and_formatters () [ソース] #

のロケーターとフォーマッターを、このスケールに適したインスタンスに設定します。

クラス matplotlib.scale。SymmetricalLogTransform ( base , linthresh , linscale ) [source] #

拠点:Transform

パラメータ:
shorthand_name str

変換の「名前」を表す文字列。str(transform)この名前は、DEBUG=Trueの場合の読みやすさを向上させる以外に意味はありません 。

has_inverse = True #

この変換に対応する逆変換がある場合は true。

input_dims = 1 #

この変換の入力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

反転( ) [ソース] #

対応する逆変換を返します。

を保持します。x == self.inverted().transform(self.transform(x))

このメソッドの戻り値は一時的なものとして扱う必要があります。自分自身への更新は、その逆コピーへの対応する更新を引き起こしません。

is_separable = True #

この変換が x 次元と y 次元で分離可能である場合は true。

output_dims = 1 #

この変換の出力次元の数。サブクラスで (整数で) オーバーライドする必要があります。

transform_non_affine ( a ) [ソース] #

この変換の非アフィン部分のみを適用します。

transform(values)は常に と同等 transform_affine(transform_non_affine(values))です。

非アフィン変換では、これは一般に と同等 transform(values)です。アフィン変換では、これは常にノーオペレーションです。

パラメータ:
値の配列

input_dims長さまたは形状 (N x )の NumPy 配列としての入力値input_dims

戻り値:
配列

入力に応じて、長さoutput_dimsまたは形状 (N x )の NumPy 配列としての出力値。output_dims

matplotlib.scale. get_scale_names ( ) [ソース] #

利用可能なスケールの名前を返します。

matplotlib.scale. register_scale ( scale_class ) [ソース] #

新しい種類のスケールを登録します。

パラメータ:
scale_classのサブクラスScaleBase

登録するスケール。

matplotlib.scale. scale_factory ( scale , axis , ** kwargs ) [source] #

名前でスケール クラスを返します。

パラメータ:
scale {'asinh', 'function', 'functionlog', 'linear', 'log', 'logit', 'symlog'}
matplotlib.axis.Axis