Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 集xscale在指数函数中的应用_Python_Matplotlib_Probability Density - Fatal编程技术网

Python 集xscale在指数函数中的应用

Python 集xscale在指数函数中的应用,python,matplotlib,probability-density,Python,Matplotlib,Probability Density,我试图在xaxis上使用指数尺度。我看过这篇文章,但没有找到简单的解决办法 我认为matplotlib函数setxscale能够非常轻松地完成这项工作。但是,以下代码会产生警告,显示的结果与预期相差甚远: 将numpy作为np导入 从matplotlib导入pyplot作为plt 从scipy导入统计信息 def forwardx: 返回np.expx def reversex: 返回np.logx 定义高斯概率密度函数: mu,标准=6.6,0.75 rv=stats.normloc=mu,s

我试图在xaxis上使用指数尺度。我看过这篇文章,但没有找到简单的解决办法

我认为matplotlib函数setxscale能够非常轻松地完成这项工作。但是,以下代码会产生警告,显示的结果与预期相差甚远:

将numpy作为np导入 从matplotlib导入pyplot作为plt 从scipy导入统计信息 def forwardx: 返回np.expx def reversex: 返回np.logx 定义高斯概率密度函数: mu,标准=6.6,0.75 rv=stats.normloc=mu,scale=std x样本 x=np.linspacemu-3*std,mu+3*std,100 陈列 图,轴=plt子图2,1 轴[0]。plotx,rv.pdfx,color='r' 轴[0]。设置标题“线性比例” 轴[1]。plotx,rv.pdfx,color='r' 轴[1]。设置标题“指数比例” 轴[1]。设置xscale'function',functions=forward,reverse 因此,我得到以下警告: RuntimeWarning:日志中遇到无效值,并且图形上的x轴不好:

我猜这是因为它试图获取负值或空值的日志。但是,曲线I图中没有此类值

我知道如果我显示相应的对数正态分布,我可以得到类似的图。然而,我之所以需要按我所描述的那样做,是因为我计划显示更复杂的概率密度函数,以及更复杂的xscale函数


谢谢你的帮助

自动缩放可能会与正在使用的自定义缩放混淆。由于set_scalefunction。。。是一个非常新的API,可能还不是每个细节都完美契合

因此,这里需要手动设置限制,例如通过

axes[1].set_xlim(x.min(), x.max())