ম্যাটপ্লোটিলেব দুটি উল্লম্ব রেখার মধ্যে পূরণ করুন


101

আমি ডকুমেন্টেশনের উদাহরণগুলির মধ্যে দিয়েছি matplotlib, তবে এটি আমার কাছে স্পষ্ট ছিল না যে আমি কীভাবে একটি প্লট তৈরি করতে পারি যা দুটি নির্দিষ্ট উল্লম্ব লাইনের মধ্যবর্তী অঞ্চলটি পূরণ করে।

উদাহরণস্বরূপ, বলুন আমি x=0.2এবং এর মধ্যে x=4( প্লটের সম্পূর্ণ yপরিসরের জন্য) প্লট তৈরি করতে চাই । আমার ব্যবহার করা উচিত fill_between, fillবা fill_betweenx?

আমি কি এর whereজন্য শর্তটি ব্যবহার করতে পারি ?

উত্তর:


205

মনে হচ্ছে আপনি axvspanফাংশনগুলির মধ্যে একটি পূরণের পরিবর্তে চান । পার্থক্যটি হ'ল axvspan(এবং axhspan) আপনি কীভাবে জুম করবেন না কেন প্লটটির সম্পূর্ণ y (বা x) পরিমাণ পূরণ করবে।

উদাহরণস্বরূপ, আসুন axvspan8 এবং 14 এর মধ্যে এক্স-অঞ্চলটি হাইলাইট করতে ব্যবহার করুন :

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot(range(20))
ax.axvspan(8, 14, alpha=0.5, color='red')

plt.show()

এখানে চিত্র বর্ণনা লিখুন

আপনি এটি করতে ব্যবহার fill_betweenxকরতে পারেন, তবে আয়তক্ষেত্রের এক্সটেন্টস (এক্স এবং y উভয়) ডেটা স্থানাঙ্কে থাকবে । এর সাথে axvspan, আয়তক্ষেত্রের y-এক্সটেন্টগুলি 0 এবং 1 এ ডিফল্ট হয় এবং অক্ষ অক্ষরে থাকে (অন্য কথায়, প্লটের উচ্চতার শতাংশ)।

এটি চিত্রিত করার জন্য, আয়তক্ষেত্রটি উচ্চতার 10% থেকে 90% পর্যন্ত বাড়ানো যাক (পুরো মাত্রাটি গ্রহণের পরিবর্তে)। জুমিং বা প্যানিংয়ের চেষ্টা করুন, এবং লক্ষ্য করুন যে ওয়-এক্সটেন্টগুলি প্রদর্শন স্থানে স্থির বলেছে, যখন এক্স-এক্সেন্টেন্টগুলি জুম / প্যানের সাথে সরানো হয়েছে:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot(range(20))
ax.axvspan(8, 14, ymin=0.1, ymax=0.9, alpha=0.5, color='red')

plt.show()

এখানে চিত্র বর্ণনা লিখুন


4
যে লোকেরা fill_betweenআরও "উইগলি", উল্লম্ব লাইনের জন্য সমাধানের সমাধান করতে আগ্রহী তাদের transformপ্যারামিটারটি একবার দেখুন (এবং এই উত্তর )
মিঃ Tsjolder
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.