Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 28, 2016 20:44:05

falazure123
Зарегистрирован: 2016-04-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

построение нескольких графиков на одной картинке

Доброго времени суток.
Мне нужно по входному тхт файлу построить графики.

Есть входной файл. в нем 10 столбцов. и много строчек. Мне нужно построить соотвественно 10 графиков. Координаты по Х это номер строчки. По Y - значение в строчке.

Прикрепляю пример тхт файла такого. И картинку, как это должно выглядеть(легенда не нужна, желательно тоже разных цветов линии). matplotlib есть.

Отредактировано falazure123 (Апрель 28, 2016 20:47:15)

Прикреплённый файлы:
attachment out.txt (76,4 KБ)

Офлайн

#2 Апрель 28, 2016 21:03:59

falazure123
Зарегистрирован: 2016-04-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

построение нескольких графиков на одной картинке

решил эту проблему

import sys
import FileDialog
import matplotlib.backends.backend_tkagg
import matplotlib.pyplot as plt
import numpy as np
y=np.loadtxt('out.txt')
t=np.arange(len(y))*1
plt.grid(1)
plt.plot(t,y)
plt.show()
plt.savefig('test.jpg')

теперь я хочу, чтобы на выходе было 2 картинки. одна вот, которая получается, с помощью этого кода. (10 графиков на одной картинке), а вторая картинка с графиком, который построен по другому входному файлу. И чтобы у картинки с несколькими графиками была легенда. Хотя бы банально линия 1, линия 2 и тд.
что нужно добавить?

Отредактировано falazure123 (Апрель 28, 2016 22:00:05)

Офлайн

#3 Апрель 29, 2016 00:51:49

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

построение нескольких графиков на одной картинке

как то так примерно. За корректность сейчас не ручаюсь. У матплотлиб есть большая коллекция примеров и иллюстраций с кодом, благодаря которой можно легко перенести нужный код в ваш.

import sys
import FileDialog
import matplotlib.backends.backend_tkagg
import matplotlib.pyplot as plt
import numpy as np
for filename in ('out.txt', 'out2.txt'):
    plt.figure()
    y=np.loadtxt('out.txt')
    t=np.arange(len(y))*1
    plt.grid(1)
    plt.plot(t,y)
    plt.legend()
    #plt.show() # расскомментировать если хотите смотреть графики
    plt.savefig(filename + '.jpg')



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version