Това е продължение на тази тема интерактивен matplolib чрез eclipse, която е на около 2 години, аз се чудех дали е имало някакъв напредък междувременно.
Изпълнявам конзолата на IPython в прозорец на конзолата в Eclipse PyDev, но не мога да получа същите интерактивни функции за чертане с matplotlib, както ако стартирам IPython в команден ред (Windows) извън Eclipse PyDev. Ето как се сравняват двете:
A) Изпълнение на IPython в обвивка извън Eclipse PyDev
- Стартирайте IPython в командния ред на Windows с "ipython --pylab"
- В конзолата на IPython въведете "plot([1,2,3])". Това ще отвори прозорец за чертане на фигура и конзолата на IPython е готова за допълнителни команди (без да се налага да затваряте прозореца за чертане на фигура).
- Например, мога да въведа "xlabel('years')" и това ще актуализира моя прозорец за диаграма на фигурата.
B) Изпълнение на IPython в интерактивна конзола в рамките на Eclipse PyDev Въведете следното в интерактивната конзола на IPython в рамките на Eclipse PyDev:
- "от pylab import *"
- "plot([1,2,3])" --> прозорецът за графика на фигура не се показва.
- Трябва да въведа "show()", за да отворя прозореца за графика на фигурата. Но сега проблемът е, че докато държа отворен прозореца за графика на фигурата, конзолата на IPython не приема никакви нови команди.
- Така че затварям прозореца за графика на фигурата, въвеждам "xlabel('years')", последвано от "show()" отново. Това ще отвори отново прозореца за диаграма на фигурата с „години“ като етикет на моята ос, но самата диаграма е празна и вече не показва данните [1,2,3].
С това поведение A) очевидно превъзхожда B), но бих искал да продължа да работя в Eclipse PyDev, защото ми харесва винаги да имам списък с променливи на моя екран (без да се налага да изпълнявам команда за показване на всички променливи, както когато изпълнявам форма на IPython обвивка на Windows). Използването на Wicked Shell, както е предложено в другата тема, не работи (IPython не работи правилно в Wicked Shell).
Как мога да конфигурирам IPython в Eclipse PyDev, така че да показва същото интерактивно поведение, както ако го стартирам в командния ред на Windows?
ion()
- това е функция от matplotlib, която означава "включен интерактивен режим". - person Thomas K   schedule 19.11.2012