了解对数比例并实际获取数据的 np.log 这是我制作的情节我的问题编辑(1)

问题描述

我目前正在处理一些实验数据,并且很难理解我是应该进行对数刻度还是实际将 np.log 应用于数据。

这是我制作的情节。

enter image description here

蓝色代表使用 plt.yscale('log'),而橙色代表创建一个新列并将 np.log 应用于数据。

我的问题

为什么它们的量级如此不同?哪个是正确的?如果使用 plt.yscale('log') 是最佳方法,那么我是否可以在之后进行曲线拟合时获得这些值?

提前感谢任何可以提供一些答案的人!

编辑(1)

我了解 plt.yscale('log') 以 10 为底,而 np.log 指的是自然对数。我曾尝试在数据上使用 np.log10,但它给出的值较小,与使用对数刻度不符。

解决方法

您的数据正在被记录但“指向”?方向错误。

考虑这个玩具数据

x = np.linspace(0,1,100)[:-1]
y = np.log(1-x) + 5

然后我们绘制

plt.plot(x,y)

enter image description here

如果我记录缩放它:
只是更夸张了

plt.plot(x,y)
plt.xscale('log')

enter image description here

您需要像普通日志数据一样将数据指向另一个方向

plt.plot(-x,y)

enter image description here

但您还必须确保数据是正面的,或者……您知道……日志和内容¯\_(ツ)_/¯

plt.plot(-x + 1,y)
plt.xscale('log')

enter image description here