Сюжет с меньшим количеством маркеров, чем точки данных (или лучший способ подготовить CDFs?) [matplotlib, или общая помощь нанесения]

Я готовлю Совокупные Функции Распределения с большим количеством точек данных. Я готовлю несколько линий на том же участке, которые отождествлены с маркерами, поскольку он будет напечатан в черно-белых тонах. Что я хотел бы, маркеры, равномерно располагаемые в x-измерении. То, что я получаю, является одним маркером за точку данных (и, учитывая число очков, они все накладываются),

Я не уверен, является ли это мое понимание того, как составить заговор хорошо, или просто отсутствие понимания matplotlib. Я не могу найти 'урегулирование' частоты маркера.

Легкое решение для одной линии состояло бы в том, чтобы взять каждую стоимость N'th от линии и использование, что как отдельная линия с linestyle = '', но я хотел бы, чтобы маркеры были вертикально выровнены, и различные множества x, имеют различные длины.

# in reality, many thousands of values
x_example = [ 567, 460, 66, 1034, 275, 26, 628, 99, 287, 157, 705, 421, 1093, \ 
     139, 204, 14, 240, 179, 94, 139, 645, 670, 47, 520, 891, 450, 56, 964,   \
     1728, 99, 277, 356, 1628, 745, 364, 88, 112, 810, 816, 523, 401, 89,     \ 
     278, 917, 370, 53, 39, 90, 853, 356 ] 
x = sort(x_example)
y = linspace(0,1,len(x))

ax = subplot(1,1,1)
plots[w] = ax.plot(x,y, marker='o')
28
задан James Broadhead 11 January 2010 в 06:34
поделиться

1 ответ

Вы можете сделать Участок (X, Y, Marker = 'O', Markevery = 5) , чтобы отметить каждую пятую точку, но я не думаю, что есть встроенная поддержка установочных меток по четные интервалы. Вы можете принять решение о местах X, где вы хотите оценки, используйте E.g. NUMPY.Searchsorted , чтобы найти точки данных, расположенные между соседними точками, а затем интерполируют между соседними точками, чтобы найти координаты Y.

46
ответ дан 28 November 2019 в 03:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: