Как изменить масштаб осей matplotlib на функцию Sin с 0-1 - PullRequest
0 голосов
/ 27 мая 2019

Я пытаюсь масштабировать оси на моем графике от 0 до 1, но следую за продвижением функции sin за этот интервал.Мне нужно сделать это, чтобы получить равномерное распределение данных для моего графика.

Я пытался использовать оператор FuncScale, но безрезультатно.

import numpy as np
import matplotlib.pyplot as plt
import random as rand

#Define radius and angle
r = np.arange(0,5,0.0001)
a = np.arange(0, np.pi/2 ,(np.pi/100000))#[:-1]
print(len(r))
print(len(a))
#x = r * np.cos(a)
#y = r * np.sin(a)

#Generate random integer list and zip with radii and angles
samp=50000
q = rand.sample(range(samp),samp)
qrzip = zip(r,q)
u = rand.sample(range(samp),samp)
uazip = zip(a,u)

#Turn tuples back into list
qr = list(qrzip)
ua = list(uazip)

# Sort with lambda function
qr.sort(key=lambda x: x[1])
ua.sort(key=lambda x: x[1])

#Form lists of radii and angles in random order
qrr = [qrr[0] for qrr in qr]
uaa = [uaa[0] for uaa in ua]

#Define variables
cos = qrr*np.cos(uaa)
sin = qrr*np.sin(uaa)

plt.plot(cos, sin,'g,')
plt.xlim(0, 5)
plt.ylim(0, 5)
plt.gca().set_aspect('equal', adjustable='box')
plt.draw()

Функция отображает нормальное целое числомасштаб, но я хочу, чтобы построить на шкале грех (0,1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...