2010-12-01 4 views
75

Я рисую две аналогичные траектории в matplotlib, и я хотел бы построить каждую из линий с частичной прозрачностью, чтобы красный (график второй) не скрывал синий цвет.Графики прозрачной линии Matplotlib

alt text

EDIT: Вот изображение с прозрачными линиями.

alt text

+26

Ahhh ... аттрактор Лоренца. Всегда делает меня счастливым ... :) – 2010-12-01 01:12:12

ответ

120

Простой и простой:

plt.plot(x, y, 'r-', alpha=0.7) 

(я знаю, что я не добавить ничего нового, но простой ответ должен быть виден).

6

Это действительно зависит от того, какие функции вы используете для построения линии, но попытайтесь увидеть, если на вы используете принимает значение альфа и установить его на что-то вроде 0,5. Если это не сработает, попробуйте получить объекты линии и установить их альфа-значения напрямую.

20

После того как я построены все линии, я был в состоянии установить прозрачность всех их следующим образом:

for l in fig_field.gca().lines: 
    l.set_alpha(.7) 

EDIT: смотрите ответ Джо в комментариях.

+25

Все функции построения maplotlib принимают альфа-параметр напрямую. Вы можете просто выполнить `plt.plot (x, y, 'r-', alpha = 0.7)`. – 2010-12-01 00:53:54

+3

Я был бы рад видеть обновленную фотографию - не могли бы вы добавить ее в этот ответ, пожалуйста? – 2010-12-01 12:50:29

Смежные вопросы