पायथन में matplotlib पुस्तकालय का उपयोग करके रेखांकन बनाने की क्षमता है। इसमें कई पैकेज और फ़ंक्शन हैं जो विभिन्न प्रकार के ग्राफ़ और प्लॉट उत्पन्न करते हैं। इसे इस्तेमाल करना भी बहुत आसान है। यह numpy और अन्य पायथन बिल्ट-इन फ़ंक्शंस के साथ लक्ष्य को प्राप्त करता है। इस लेख में हम कुछ विभिन्न प्रकार के ग्राफ देखेंगे जो यह उत्पन्न कर सकते हैं।
सरल ग्राफ़
यहां हम ग्राफ के x और Y निर्देशांक उत्पन्न करने के लिए गणितीय फ़ंक्शन लेते हैं। फिर हम उस फ़ंक्शन के ग्राफ़ को प्लॉट करने के लिए matplotlib का उपयोग करते हैं। यहां हम लेबल लागू कर सकते हैं और नीचे दिखाए गए अनुसार ग्राफ का शीर्षक दिखा सकते हैं। हम त्रिकोणमितीय फलन - टैन के लिए ग्राफ बना रहे हैं।
उदाहरण
from matplotlib import pyplot as plt import numpy as np import math #needed for definition of pi x = np.arange(0, math.pi*2, 0.05) y = np.tan(x) plt.plot(x,y) plt.xlabel("angle") plt.ylabel("Tan value") plt.title('Tan wave') plt.show()
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
मल्टीप्लॉट
हम एकाधिक अक्ष बनाकर और प्रोग्राम में उनका उपयोग करके एक ही कैनवास पर दो या अधिक प्लॉट रख सकते हैं।
उदाहरण
import matplotlib.pyplot as plt import numpy as np import math x = np.arange(0, math.pi*2, 0.05) fig=plt.figure() axes1 = fig.add_axes([0.1, 0.1, 0.8, 0.8]) # main axes axes2 = fig.add_axes([0.55, 0.55, 0.3, 0.3]) # inset axes axes3 = fig.add_axes([0.2, 0.3, 0.2, 0.3]) # inset axes axes1.plot(x, np.sin(x), 'b') axes2.plot(x,np.cos(x),'r') axes3.plot(x,np.tan(x),'g') axes1.set_title('sine') axes2.set_title("cosine") axes3.set_title("tangent") plt.show()
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
सबप्लॉट का ग्रिड
हम एक ग्रिड भी बना सकते हैं जिसमें अलग-अलग ग्राफ़ हों, जिनमें से प्रत्येक एक सबप्लॉट है। इसके लिए हम सबप्लॉट2ग्रिड फ़ंक्शन का उपयोग करते हैं। यहां हमें कुल्हाड़ियों का चयन सावधानी से करना होगा ताकि सभी सबप्लॉट ग्रिड में फिट हो सकें। थोड़ा हिट एक dtrail की आवश्यकता हो सकती है।
उदाहरण
plta1 =plt.subplot2grid((3,3),(0,0),colspan =2)a2 =plt.subplot2grid((3,3),(0,2), Rowpan =के रूप मेंimport matplotlib.pyplot as plt a1 = plt.subplot2grid((3,3),(0,0),colspan = 2) a2 = plt.subplot2grid((3,3),(0,2), rowspan = 3) a3 = plt.subplot2grid((3,3),(1,0),rowspan = 2, colspan = 2) import numpy as np x = np.arange(1,10) a2.plot(x, x*x,'r') a2.set_title('square') a1.plot(x, np.exp(x),'b') a1.set_title('exp') a3.plot(x, np.log(x),'g') a3.set_title('log') plt.tight_layout() plt.show()
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं:
कंटूर प्लॉट
कंटूर प्लॉट (कभी-कभी लेवल प्लॉट कहा जाता है) दो-आयामी विमान पर त्रि-आयामी सतह दिखाने का एक तरीका है। यह y-अक्ष पर दो पूर्वसूचक चर X Y और समोच्च के रूप में एक प्रतिक्रिया चर Z को रेखांकन करता है। Matplotlib में समोच्च () और समोच्च () फ़ंक्शन होते हैं जो क्रमशः समोच्च रेखाएँ और भरे हुए समोच्च खींचते हैं।
उदाहरण
import numpy as np import matplotlib.pyplot as plt xlist = np.linspace(-3.0, 3.0, 100) ylist = np.linspace(-3.0, 3.0, 100) X, Y = np.meshgrid(xlist, ylist) Z = np.sqrt(X**2 + Y**2) fig,ax=plt.subplots(1,1) cp = ax.contourf(X, Y, Z) fig.colorbar(cp) # Add a colorbar to a plot ax.set_title('Filled Contours Plot') #ax.set_xlabel('x (cm)') ax.set_ylabel('y (cm)') plt.show()
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं: