লেজেন্ড এবং সেকেন্ডারি Y-অক্ষ সহ দুটি Pandas টাইম সিরিজ একই প্লটে প্লট করতে, আমরা নিচের ধাপগুলো অনুসরণ করতে পারি:
- ফিগার আকার নির্ধারণ করুন এবং সাবপ্লটের মধ্যে এবং চারপাশে প্যাডিং সমন্বয় করুন।
- অক্ষ লেবেল সহ একটি এক-মাত্রিক ndarray তৈরি করুন (টাইম সিরিজ সহ)।
- কিছু কলাম লিস্ট সহ একটি ডেটাফ্রেম তৈরি করুন।
- ডেটাফ্রেম plot() মেথড ব্যবহার করে কলাম A এবং B প্লট করুন।
- get_legend_handles_labels() মেথড ব্যবহার করে লেজেন্ডের জন্য হ্যান্ডেল এবং লেবেল রিটার্ন করুন।
- legend() মেথড ব্যবহার করে ফিগারে একটি লেজেন্ড রাখুন।
- ফিগার প্রদর্শন করতে show() মেথড ব্যবহার করুন।
উদাহরণ
import pandas as pd
from matplotlib import pyplot as plt
import numpy as np
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
ts = pd.Series(np.random.randn(10), index=pd.date_range('2021-04-10', periods=10))
df = pd.DataFrame(np.random.randn(10, 4), index=ts.index, columns=list('ABCD'))
ax1 = df.A.plot(color='red', label='Count')
ax2 = df.B.plot(color='yellow', secondary_y=True, label='Sum')
h1, l1 = ax1.get_legend_handles_labels()
h2, l2 = ax2.get_legend_handles_labels()
plt.legend(h1+h2, l1+l2, loc=2)
plt.show()
আউটপুট
