আমার দুটি ওয়াই-এক্স দিয়ে একটি প্লট ব্যবহার করছে twinx()
। আমি লাইনগুলিতে লেবেলও দিই এবং সেগুলি দিয়ে দেখাতে চাই legend()
, তবে আমি কেবলমাত্র একটি অক্ষের লেবেলগুলি কিংবদন্তীতে পেয়েছি:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
rc('mathtext', default='regular')
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(time, Swdown, '-', label = 'Swdown')
ax.plot(time, Rn, '-', label = 'Rn')
ax2 = ax.twinx()
ax2.plot(time, temp, '-r', label = 'temp')
ax.legend(loc=0)
ax.grid()
ax.set_xlabel("Time (h)")
ax.set_ylabel(r"Radiation ($MJ\,m^{-2}\,d^{-1}$)")
ax2.set_ylabel(r"Temperature ($^\circ$C)")
ax2.set_ylim(0, 35)
ax.set_ylim(-20,100)
plt.show()
সুতরাং আমি কেবল কিংবদন্তিতে প্রথম অক্ষের লেবেলগুলি পাই এবং দ্বিতীয় অক্ষের 'টেম্প' লেবেলটি পাই না। আমি কীভাবে এই তৃতীয় লেবেলটি কিংবদন্তিতে যুক্ত করতে পারি?
ax
হয় তখন আমি যে স্টাইলটি ব্যবহার করি তার সাথে খালি অ্যারে প্লট করার একটি কুৎসিত হ্যাক ব্যবহার করিax2
: ইন আপনার কেসax.plot([], [], '-r', label = 'temp')
,। এটি সঠিকভাবে করার চেয়ে অনেক দ্রুত এবং সহজ ...