Нарисуйте равномерно разделенные линии в Python - PullRequest
0 голосов
/ 26 июня 2018

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

import matplotlib.pyplot as plt

array = [2,3,1,5,7,9]

xMin = -30
xMax = 30
plt.ylim(0,30 )
plt.xlim(xMin,xMax)

factor = (xMax - xMin)/len(array)

for i in array:
   plt.plot((xMin,xMin),(0,i),'-k')
   xMin+= factor

plt.show()

PS. Числа в массиве означают значение для оси Y enter image description here

1 Ответ

0 голосов
/ 26 июня 2018
import matplotlib.pyplot as plt; import numpy as np
array, xmin, xmax, ymax = [2,3,1,5,7,9], -30, 30, 30
plt.ylim(0,ymax)
[plt.axvline(v, ymax=array[i]/ymax, c='k', lw=1) for i, v in enumerate(np.linspace(xmin,xmax,len(array)))];

enter image description here

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