我正在做一些分析来计算log_10(x)
的值,这是一个负数。我现在正试图绘制这些值,但是,由于答案的范围非常大,我想使用对数标度。如果我只是使用plt.yscale('log')
,我会收到一条消息,告诉我UserWarning: Data has no positive values, and therefore cannot be log-scaled.
我也无法提供x
到plt.plot
的值,因为log_10(x)
的结果太大了并且否定x**(log_10(x))
的答案只是0
。
绘制这些数据的最简单方法是什么?
答案 0 :(得分:4)
您可以使用
plt.yscale('symlog')
将比例设置为对称日志比例。这意味着它将以对数方式缩放到0的两边。只有使用symlog标度的负部分才能正常工作。