私は非常に小さな違いのような値を持っています... 0.000001。私はそれらを対数スケールで視覚化したい。私はmatplotlibでそれを行う方法が不思議です。matplotalibの対数スケールで値を視覚化する方法は?
どうもありがとう
私は非常に小さな違いのような値を持っています... 0.000001。私はそれらを対数スケールで視覚化したい。私はmatplotlibでそれを行う方法が不思議です。matplotalibの対数スケールで値を視覚化する方法は?
どうもありがとう
http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.axis
は単に例では、キーワード引数log=True
を追加または:
from matplotlib import pyplot
import math
pyplot.plot([x for x in range(100)],[math.exp(y) for y in range(100)])
pyplot.xlabel('arbitrary')
pyplot.ylabel('arbitrary')
pyplot.title('arbitrary')
#pyplot.xscale('log')
pyplot.yscale('log')
pyplot.show()
あなたはこの作品を使用することができますコード:
import matplotlib.pyplot
# to set x-axis to logscale
matplotlib.pyplot.xscale('log')
# to set y-axis to logscale
matplotlib.pyplot.yscale('log')
代わりのplot
、あなたはsemilogy
を使用することができます。
import numpy as npy
import matplotlib.pyplot as plt
x=npy.array([i/100. for i in range(100)])
y=npy.exp(20*x)
plt.semilogy(x, y)
plt.show()
しかし、私はあなたが対数スケールを使用することから得るために望んで全くわかりません。あなたが「小さな違い」と言うとき、値が193.000001と193.000002のようなものかもしれないということを意味しますか?その場合は、それは他のすべての答えが唯一のグローバルpyplot.xscale("log")
アプローチに言及しているので193
をオフに引くのに役立つかもしれません:あなたはまた、軸ごとに設定することができますが、その後の構文は次のとおりです。の
ax.set_yscale("log")
可能性のある重複しました[ Pythonでmatplotlibで対数軸をプロットする](http://stackoverflow.com/questions/773814/plot-logarithmic-axes-with-matplotlib-in-python) – bluenote10