3

ここに画像の説明を入力

このプロットは、負の値と正の値の両方である時間の差を示すことになっています。非常に小さい違いもあれば、非常に大きい違いもあります。

解像度が x = 0 付近で非常に細かく、x = 0 から離れると解像度が粗くなるように、x 軸をスケーリングできますか? x = 0 から外側に向かって対数スケールを使用することは可能ですか?

編集:

@Evert で提案されているように、これで問題は解決します。

ax = gca()
...
ax.set_xscale("symlog")

そして、このプロットを生成します:

ここに画像の説明を入力

4

2 に答える 2

7

symlog次の設定を使用できますxscale(): http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.xscale

ゼロ付近の限定されたセクション (さらにキーワードを使用して設定できます。ドキュメントを参照) を除いて、対数的に (負の側でも) スケーリングします。そのセクションは線形にスケーリングされるため、すべてのlog(0)問題が回避されます。

例については、こちらを参照してください。

于 2013-02-19T14:54:23.427 に答える
3

2つのサブプロットを作成します。右側のサブプロットに正の時間をプロットし、左側のサブプロットにabs(負の時間)を逆のx軸でプロットします。

x = 0から対数目盛を外側に向けることは可能ですか?

いいえ、対数プロットにはゼロが表示されないため、log-x軸の「左端」に近づくと、ログスペースで負の無限大になり、ゼロを超えて真に到達することはできません。負の値。どういうわけかゼロを切り取らなければなりません。

于 2013-02-19T14:18:17.330 に答える