Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 18, 2012 15:41:54

fongostev
От: Moskau
Зарегистрирован: 2012-04-03
Сообщения: 62
Репутация: +  4  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

Добрый день.
Я работаю в Spyder и часто строю какие-то графики через matplotlib. В связи с необходимостью запуска программы не из IDE, а из командной строки, возникла проблема: тот алгоритм, что строит графики в Spyder, в командной строке просто не работает, то есть программа выполняется, но графики matplotlib не строит.

Что делать?

Офлайн

#2 Апрель 19, 2012 08:40:18

asv13
От:
Зарегистрирован: 2007-01-22
Сообщения: 130
Репутация: +  0  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

а что пишет то? вы бы ошибку привели или пример
show() используете? в spyder вроде режим ion() включен по умолчанию, может его добавить надо в скрипт который через командную запускаете?



Офлайн

#3 Апрель 19, 2012 21:37:02

fongostev
От: Moskau
Зарегистрирован: 2012-04-03
Сообщения: 62
Репутация: +  4  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

x.plot(T, B)
x.grid(True)
y.plot(T, A)
y.grid(True)
z.plot(range(len(D)), D) 
plt.grid(True)
plt.show()
Ошибки никакой на выходе нет, иначе я бы знал примерно, в какую сторону копать, а так ничего. Спасибо за подсказку, но включение ion() ничего не дал, как не запускалось, так и не запускается.

Офлайн

#4 Апрель 20, 2012 08:46:22

asv13
От:
Зарегистрирован: 2007-01-22
Сообщения: 130
Репутация: +  0  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

что за объекты x y z? честно не понял пример, как-то усложненно выглядит и 3-d я обычно не так строил. я со спайдером не особо знаком, может там свои способы.



Офлайн

#5 Апрель 29, 2012 13:56:27

fongostev
От: Moskau
Зарегистрирован: 2012-04-03
Сообщения: 62
Репутация: +  4  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

x, y, z - объекты типа

pylab.subplot()
То есть это три независимых графика на одной форме plot. В принципе в спайдере те же алгоритмы, так как остальной код там пишется на ура

Офлайн

#6 Май 2, 2012 13:37:39

asv13
От:
Зарегистрирован: 2007-01-22
Сообщения: 130
Репутация: +  0  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

Набросал пример, стараясь быть ближе к оригиналу (я бы конечно сделал по другому). Всё работает без ошибок. Может у вас данные какие или еще что чего не видно в куске приведенного кода.

from pylab import *
T=[1,2,3]
B=T
A=T
D=T
x = plt.subplot(311)
x.plot(T, B)
x.grid(True)
y=plt.subplot(312)
y.plot(T, A)
y.grid(True)
z=plt.subplot(313)
z.plot(range(len(D)), D) 
plt.grid(True)
plt.show()



Офлайн

#7 Май 2, 2012 21:24:53

fongostev
От: Moskau
Зарегистрирован: 2012-04-03
Сообщения: 62
Репутация: +  4  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

asv13
Набросал пример, стараясь быть ближе к оригиналу (я бы конечно сделал по другому). Всё работает без ошибок. Может у вас данные какие или еще что чего не видно в куске приведенного кода.

from pylab import *
T=[1,2,3]
B=T
A=T
D=T
x = plt.subplot(311)
x.plot(T, B)
x.grid(True)
y=plt.subplot(312)
y.plot(T, A)
y.grid(True)
z=plt.subplot(313)
z.plot(range(len(D)), D) 
plt.grid(True)
plt.show()
Видимо, что-то именно с моей машиной. Этот код тоже не работает из баша. Скажите пожалуйста, как бы Вы это реализовали?

Офлайн

#8 Май 4, 2012 06:16:41

asv13
От:
Зарегистрирован: 2007-01-22
Сообщения: 130
Репутация: +  0  -
Профиль   Отправить e-mail  

Matplotlib & Spyder

Например так.

from pylab import *
T=[1,2,3]
B=A=D=T
for i, y in ((1,A), (2,B), (3,D)):
	subplot(3,1,i)
	plot(T, y)
	grid(True)
show()

Но дело не в стиле. Пробуйте упрощать - строить один график, или не использовать subplot (grid) - надо же узнать что вызывает ошибку. Про bash ничего не знаю, у меня винда.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version