作图-线性坐标与对数坐标

作图-线性坐标与对数坐标线性坐标在显示有较大区值范围的$x$和$y$时($x$和$y$的取值范围有很大尺度的差异)不能很清楚地将两者的对应关系表现出来。对于函数$y=log_{10}x,x\in[1,100000]$在线性坐标下如图一所示。importmatplotlib.pyplotaspltimport

大家好,欢迎来到IT知识分享网。

线性坐标在显示有较大区值范围的\(x\)\(y\)时(\(x\)\(y\)的取值范围有很大尺度的差异)不能很清楚地将两者的对应关系表现出来。对于函数\(y=log_{10}x, x\in[1, 100000]\)在线性坐标下如图一所示。

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(1, 100000)
y = np.log10(x)

plt.plot(
    x, 
    y, 
    color='k', 
    lw=2)
plt.title('Linear')
plt.xlabel('x')
plt.ylabel('log(x)')

作图-线性坐标与对数坐标
图一,对数函数在线性坐标下的图像。

很显然,对于\(x<1000\)对应的\(y\)是无法通过图来很清楚地确定的。通过对\(x\)进行对数转换则可以更加清楚地表示出\(x\)\(y\)的关系。图二即为上述公式在对数坐标下的图形。

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(1, 100000)
y = np.log10(x)

plt.plot(
    x, 
    y, 
    color='k', 
    lw=2)
plt.title('x-log')
plt.xlabel('x')
plt.ylabel('log(x)')
plt.xscale('log')

作图-线性坐标与对数坐标
图二,对数函数在对\(x\)轴进行对数转换后的图像。

而当对\(x\)\(y\)同时进行对数转换之后,相应的图形展示为图三。因此通常只需要将范围尺度较大的变量进行对数变换即可。

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(1, 100000)
y = np.log10(x)

plt.plot(
    x, 
    y, 
    color='k', 
    lw=2)
plt.title('xy-log')
plt.xlabel('x')
plt.ylabel('log(x)')
plt.xscale('log')
plt.yscale('log')

作图-线性坐标与对数坐标
图三,对数函数在双对数坐标下的图像。

参考:

  1. https://matplotlib.org/api/_as_gen/matplotlib.pyplot.xscale.html#matplotlib.pyplot.xscale
  2. https://zhuanlan.zhihu.com/p/43673909

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/34085.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信