পরিবেশ: পাইথন ২.7, ম্যাটপ্ল্লোব ১.৩, আইপথন নোটবুক ১.১, লিনাক্স, ক্রোম। কোডটি ব্যবহার করে একটি একক ইনপুট ঘরে রয়েছে--pylab=inline
আমি স্ট্রিম গ্রাস করতে আইপিথন নোটবুক এবং পান্ডাস ব্যবহার করতে এবং প্রতি 5 সেকেন্ডে একটি প্লটকে গতিশীলভাবে আপডেট করতে চাই।
আমি যখন পাঠ্য বিন্যাসে ডেটা মুদ্রণের জন্য মুদ্রণ বিবৃতিটি ব্যবহার করি তখন এটি পুরোপুরি সূক্ষ্মভাবে কাজ করে: আউটপুট সেলটি কেবলমাত্র ডেটা মুদ্রণ এবং নতুন সারি যুক্ত করে রাখে। কিন্তু যখন আমি ডেটা প্লট করার চেষ্টা করি (এবং তারপরে এটি একটি লুপে আপডেট করি), প্লট কখনই আউটপুট ঘরে প্রদর্শিত হয় না। তবে আমি লুপটি সরিয়ে ফেললে একবার এটি প্লট করুন। এটা ভাল কাজ করে।
তারপরে আমি কিছু সাধারণ পরীক্ষা করেছি:
i = pd.date_range('2013-1-1',periods=100,freq='s')
while True:
plot(pd.Series(data=np.random.randn(100), index=i))
#pd.Series(data=np.random.randn(100), index=i).plot() also tried this one
time.sleep(5)
আমি ম্যানুয়ালি প্রক্রিয়াটিতে বাধা দেওয়া পর্যন্ত আউটপুট কিছুই দেখায় না (ctrl + m + i)। এবং আমি এটি বাধা দেওয়ার পরে প্লটটি একাধিক ওভারল্যাপযুক্ত লাইন হিসাবে সঠিকভাবে দেখায়। তবে আমি যা চাই তা হ'ল একটি প্লট যা প্রতি 5 সেকেন্ডের মধ্যে প্রদর্শিত হয় এবং আপডেট হয় (বা যখনই plot()
ফাংশনটি ডাকা হয় ঠিক তেমনভাবে আমি উপরে উল্লিখিত মুদ্রণ বিবরণীর আউটপুটগুলির মতো, যা ভালভাবে কাজ করে)। কেবলমাত্র ঘরটি সম্পূর্ণরূপে শেষ হওয়ার পরে চূড়ান্ত চার্টটি দেখানো হচ্ছে তা আমি চাই না।
এমনকি আমি প্রতিটিের পরেও স্পষ্টভাবে অঙ্কন () ফাংশন যুক্ত করার চেষ্টা করেছি plot()
them এগুলির কোনওটিই কাজ করে না। ভাবুন কীভাবে আইপিথন নোটবুকের একটি ঘরের মধ্যে / যখন লুপের মাধ্যমে একটি প্লটটি গতিশীলভাবে আপডেট করবেন।