Найти - Пользователи
Полная версия: Разнообразить вид линий в matplotlib
Начало » Python для новичков » Разнообразить вид линий в matplotlib
1
Обедающий философ
Здравствуйте!

Я испытываю желание строить на одном графике большое количество величин, однако matplotlib уже восьмую линию рисует тем же цветом, что и первую. Тогда как хотелось бы, чтобы все нарисованные графики были легко различимы, а также чтобы при построении каждого графика не надо было делать дополнительных телодвижений. Возможно ли это и ежели да, то как?

Заранее благодарен.
pill
http://matplotlib.sourceforge.net/api/axes_api.html#matplotlib.axes.Axes.plot
plt.plot([1, 2, 3], [3, 2, 1], 'g')
plt.plot([2, 1, 0], [0, 1, 2], 'r')
plt.plot([1.2, 2.2, 2.8], [2.8, 2.2, 1.2], '#E9FF1B')
plt.show()
Обедающий философ
Не, ну это да, а ежели я хочу одной командой, скажем, 20 графиков построить и не вбивать для каждого из них стиль отдельно?
Обедающий философ
Вопщем накатал следующий велосипед.

same_style_n = 7
styles0 = ["-", "--", ":", "-."]
styles = styles0[:]
#style = styles[0]
style_counter = same_style_n

def _figure(*args, **kwargs):
global style_counter, styles
style_counter = same_style_n
styles = styles0[0:]
figure(*args, **kwargs)

def _plot(*args, **kwargs):
global style_counter, styles
plot(*args, **kwargs)[0].set_linestyle(styles[0])
style_counter -= 1
if style_counter == 0:
style_counter = same_style_n
s = styles.pop(0)
styles.append(s)
Банально рисует каждые семь графиков новым стилем, итого получается, что стиль будет повторяться каждые 28 линий, что явно несколько получше, нежели 7.
doza_and
Посмотрите нормальные статьи с картинками и графиками. Рисовать тучу графиков бессмысленно даже если у вас будет разный стиль линий. Это означает что просто вы не поняли что именно хотели рисовать.Я знаю только один случай кода это делается - рисование совершенно однотипных величин - изменения температуы в 100 точках на плоскости, изменение пассажиропотока по всем станциям метро и т. п. Почти всегда есть лучший способ представления этих данных нежели чем рисовать тучу линий. Такие графики рисуют одним стилем. Они требуют спец поддержки приложения - тултипов или описания линии по тычку мышки …
Обедающий философ
Ну понятное дело, что когда дойдёт до статей, надо будет количество графиков уменьшать. А сейчас я попросту хочу разобраться, что в моей модели происходит, а для этого надо вывести про неё побольше информации.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB