使用 Python 中的可靠性包通过 matplotlib 确定 Weibull 图的 xy 极限

问题描述 投票:0回答:1

问题是我有一个练习是评估 1% (0.01) 的时间。我在 y 轴上看不到这个百分比。我需要改变限制。我的代码如下:

from reliability.Distributions import Weibull_Distribution
from reliability.Fitters import Fit_Weibull_2P

# The data is already sorted. Thereby we can generate the weibull distributions
wb1 = Fit_Weibull_2P(failures=FC1_1uA_cleaned, show_probability_plot=True)
wb2 = Fit_Weibull_2P(failures=FC2_5uA_cleaned, show_probability_plot=True)
wb3 = Fit_Weibull_2P(failures=FC3_25uA_cleaned, show_probability_plot=True)

# We can plot it now by matplot lib
plt.ylabel('Unreliability [%]')
plt.xlim(5,35)
#plt.ylim(0.01, 100)
plt.show()

我使用Spyder IDE

我尝试过使用 plt.ylim,但它会导致所有绘图出现错误。希望有人能帮我解释一下应该怎么改enter image description here

python spyder reliability weibull
1个回答
2
投票

该错误似乎可能是由于尝试将 y 轴的下限设置为 0.01(低于 0)而引起的。这可能会导致问题,因为威布尔分布的不可靠性值通常在 0 到 1 之间,而不是百分比。但是,如果您想显示百分比,可以将不可靠性值乘以 100。

from reliability.Distributions import Weibull_Distribution
from reliability.Fitters import Fit_Weibull_2P
import matplotlib.pyplot as plt

# The data is already sorted. Thereby we can generate the Weibull distributions
wb1 = Fit_Weibull_2P(failures=FC1_1uA_cleaned, show_probability_plot=False)
wb2 = Fit_Weibull_2P(failures=FC2_5uA_cleaned, show_probability_plot=False)
wb3 = Fit_Weibull_2P(failures=FC3_25uA_cleaned, show_probability_plot=False)

# We can plot it now by matplotlib
plt.ylabel('Unreliability [%]')
plt.xlim(5, 35)

# Adjust the y-axis limits to show percentages
plt.ylim(0, 100)

# Plot Weibull distributions
wb1.distribution.plot(label='1uA')
wb2.distribution.plot(label='5uA')
wb3.distribution.plot(label='25uA')

plt.legend()
plt.show()
© www.soinside.com 2019 - 2024. All rights reserved.