Python реализация неоднородной (нелинейной) оси x в matplotlib - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь использовать нелинейную ось x в Python, используя matplotlib, и не нашел никаких функций или способов решения этой проблемы.

Так выглядит наш график в данный момент времени, и я хочу преобразовать его во что-то вроде this. (посмотрите на разницу в осях x обоих графики)

Код, который у меня сейчас есть:

plt.axis([0, 100, 0, 1])
plt.plot(onecsma_x, onecsma_y, label='1-CSMA')
plt.plot(slotted_aloha_x,slotted_aloha_y, label ='Slotted Aloha')
plt.plot(pure_aloha_x,pure_aloha_y, label ='Pure Aloha')
plt.plot(npcsma_x, npcsma_y, label ='Non persisten CSMA')
plt.plot(pcsma_x, pcsma_y, label ='P persistent CSMA')
plt.legend(loc='upper right')
plt.show()

1 Ответ

0 голосов
/ 31 марта 2020

Для лога по оси абсцисс используйте semilogx вместо plot.

Также вы можете ограничить ось х, возможно, после использования semilogx (но до show) с помощью:

plt.xlim(0, 10**2)
...