Шкала логита Matplotlib со значениями 1

#python #matplotlib

Вопрос:

Я хотел бы иметь возможность отображать значения 1, используя logit шкалу в matplotlib.

 import matplotlib.pyplot as plt from numpy.random import logistic x = [round(min(1/abs(x), 1.0), 1) for x in logistic(size=1000)] fig, ax = plt.subplots() ax.hist(x)  

не логитовая шкала

Но когда я использую logit шкалу, я теряю значения 1.

 fig, ax = plt.subplots() ax.hist(x) ax.set_xscale("logit")  

с логитовой шкалой

Кроме того, если я попытаюсь вручную установить кнопки, я получу ошибки.

 gt;gt;gt; ticks = [0.5, 1.0] gt;gt;gt; ax.set_xticks(ticks) gt;gt;gt; ax.set_xticklabels(ticks) posx and posy should be finite values posx and posy should be finite values  

Я понимаю, что 1 является границей для логистической функции, но есть ли какой-то способ взломать ее, чтобы показать значения 1?

Комментарии:

1. Это больше, чем «граница», это асимптота. Используется масштаб логита log(p/(1-p)) , поэтому значение 1 приводит к бесконечности. Полагаю, вы могли бы умножить весь массив на 0,99.