प्लॉटली - बॉक्स प्लॉट वायलिन प्लॉट और कंटूर प्लॉट

यह अध्याय बॉक्स प्लॉट, वायलिन प्लॉट, समोच्च भूखंड और तरकश भूखंड सहित विभिन्न भूखंडों के बारे में विस्तार से समझने पर ध्यान केंद्रित करता है। प्रारंभ में, हम बॉक्स प्लॉट अनुसरण के साथ शुरू करेंगे।

बॉक्स प्लॉट

एक बॉक्स प्लॉट न्यूनतम युक्त डेटा के एक सेट का सारांश प्रदर्शित करता है, first quartile, median, third quartile, तथा maximum। एक बॉक्स प्लॉट में, हम पहले क्वार्टराइल से तीसरे क्वार्टलाइल तक एक बॉक्स बनाते हैं। मध्य में एक ऊर्ध्वाधर रेखा बॉक्स के माध्यम से जाती है। ऊपरी और निचले चतुर्थक के बाहर परिवर्तनशीलता का संकेत करने वाले बक्से से लंबवत रूप से फैली लाइनों को व्हिस्कर्स कहा जाता है। इसलिए, बॉक्स प्लॉट को बॉक्स और के रूप में भी जाना जाता हैwhisker plot। मूषक प्रत्येक चौकड़ी से न्यूनतम या अधिकतम तक जाता है।

बॉक्स चार्ट बनाने के लिए, हमें उपयोग करना होगा go.Box()समारोह। डेटा श्रृंखला को x या y पैरामीटर को सौंपा जा सकता है। तदनुसार, बॉक्स प्लॉट क्षैतिज या लंबवत रूप से खींचा जाएगा। निम्नलिखित उदाहरण में, इसकी विभिन्न शाखाओं में एक निश्चित कंपनी की बिक्री के आंकड़े क्षैतिज बॉक्स प्लॉट में परिवर्तित होते हैं। यह न्यूनतम और अधिकतम मूल्य के माध्य को दर्शाता है।

trace1 = go.Box(y = [1140,1460,489,594,502,508,370,200])
data = [trace1]
fig = go.Figure(data)
iplot(fig)

उसी का आउटपुट निम्नानुसार होगा -

go.Box()बॉक्स प्लॉट की उपस्थिति और व्यवहार को नियंत्रित करने के लिए फ़ंक्शन को विभिन्न अन्य पैरामीटर दिए जा सकते हैं। ऐसा ही एक बॉक्समैन पैरामीटर है।

boxmeanपैरामीटर डिफ़ॉल्ट रूप से सही पर सेट है। नतीजतन, बक्से के अंतर्निहित वितरण का मतलब बक्से के अंदर धराशायी रेखा के रूप में तैयार किया गया है। यदि इसे एसडी में सेट किया जाता है, तो वितरण का मानक विचलन भी तैयार होता है।

boxpoints पैरामीटर डिफ़ॉल्ट रूप से बराबर है "outliers"केवल मूंछ के बाहर स्थित नमूना बिंदु दिखाए गए हैं। यदि" संदेह किया गया है ", तो बाहरी बिंदु दिखाए गए हैं और अंक या तो 4" Q1-3 "Q3 से कम या 4" Q3-3 "Q1 से अधिक हाइलाइट किए गए हैं।" गलत ", केवल बॉक्स (तों) को बिना नमूना बिंदुओं के दिखाया गया है।

निम्नलिखित उदाहरण में, ए box trace मानक विचलन और बाह्य बिंदुओं के साथ तैयार किया गया है।

trc = go.Box(
   y = [
      0.75, 5.25, 5.5, 6, 6.2, 6.6, 6.80, 7.0, 7.2, 7.5, 7.5, 7.75, 8.15,
      8.15, 8.65, 8.93, 9.2, 9.5, 10, 10.25, 11.5, 12, 16, 20.90, 22.3, 23.25
   ],
   boxpoints = 'suspectedoutliers', boxmean = 'sd'
)
data = [trc]
fig = go.Figure(data)
iplot(fig)

उसी का आउटपुट नीचे बताया गया है -

वायलिन प्लॉट

वायलिन भूखंड बॉक्स भूखंडों के समान हैं, सिवाय इसके कि वे विभिन्न मूल्यों पर डेटा की संभावना घनत्व भी दिखाते हैं। वायलिन के भूखंडों में डेटा के माध्यिका के लिए एक मार्कर और इंटरचार्टाइल रेंज को इंगित करने वाला एक बॉक्स होगा, जैसा कि मानक बॉक्स भूखंडों में होता है। इस बॉक्स प्लॉट पर ओवरलैड एक कर्नेल घनत्व अनुमान है। बॉक्स भूखंडों की तरह, विभिन्न "श्रेणियों" में एक चर वितरण (या नमूना वितरण) की तुलना का प्रतिनिधित्व करने के लिए वायलिन भूखंडों का उपयोग किया जाता है।

एक वायलिन प्लाट सादे बॉक्स प्लॉट की तुलना में अधिक जानकारीपूर्ण है। वास्तव में, जबकि एक बॉक्स प्लाट केवल माध्य / मध्य और इंटरक्वेर्टाइल पर्वतमाला जैसे सारांश आँकड़े दिखाता है, वायलिन प्लॉट दिखाता हैfull distribution of the data

वायलिन ट्रेस ऑब्जेक्ट द्वारा लौटाया जाता है go.Violin() में कार्य करते हैं graph_objectsमापांक। अंतर्निहित बॉक्स प्लॉट प्रदर्शित करने के लिए,boxplot_visibleविशेषता True पर सेट है। इसी तरह, सेटिंग करकेmeanline_visible गुण के अनुसार, नमूना के माध्य के अनुरूप एक रेखा वायलिन के अंदर दिखाई गई है।

उदाहरण के बाद प्रदर्शित करता है कि वायलिन प्लाट को प्लॉट की कार्यक्षमता का उपयोग करके कैसे प्रदर्शित किया जाता है।

import numpy as np
np.random.seed(10)
c1 = np.random.normal(100, 10, 200)
c2 = np.random.normal(80, 30, 200)
trace1 = go.Violin(y = c1, meanline_visible = True)
trace2 = go.Violin(y = c2, box_visible = True)
data = [trace1, trace2]
fig = go.Figure(data = data)
iplot(fig)

आउटपुट इस प्रकार है -

समोच्च साजिश

एक 2D समोच्च भूखंड एक 2D संख्यात्मक सरणी z की समोच्च रेखाओं को दर्शाता है, अर्थात की प्रक्षेपित रेखाएं isovaluesz का। दो चर के एक फ़ंक्शन की एक समोच्च रेखा एक वक्र है जिसके साथ फ़ंक्शन का एक स्थिर मान होता है, ताकि वक्र समान मूल्य के बिंदुओं से जुड़ जाए।

एक समोच्च भूखंड उपयुक्त है यदि आप यह देखना चाहते हैं कि दो इनपुट के एक फ़ंक्शन के रूप में कुछ मान Z कैसे बदलता है, X तथा Y ऐसा है कि Z = f(X,Y)। दो चर का एक समोच्च रेखा या आइसोलिन एक वक्र है जिसके साथ फ़ंक्शन का एक स्थिर मान होता है।

स्वतंत्र चर x और y आमतौर पर एक नियमित ग्रिड के लिए प्रतिबंधित होते हैं जिन्हें मेशग्रिड कहा जाता है। Numpy.meshgrid, x मानों और y मानों की एक सरणी से एक आयताकार ग्रिड बनाता है।

पहले x, y और z का उपयोग करके डेटा मान बनाते हैं linspace()Numpy पुस्तकालय से कार्य करते हैं। हम एक बनाते हैंmeshgrid x और y मानों से और z सरणी प्राप्त करें जिसमें वर्गमूल की जड़ हो x2+y2

हमारे पास है go.Contour() में कार्य करते हैं graph_objects मॉड्यूल जो x लेता है,y तथा zजिम्मेदार बताते हैं। कोड स्निपेट x के समोच्च प्लॉट प्रदर्शित करता है,y तथा z मान ऊपर के रूप में गणना की।

import numpy as np
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)
trace = go.Contour(x = xlist, y = ylist, z = Z)
data = [trace]
fig = go.Figure(data)
iplot(fig)

आउटपुट इस प्रकार है -

समोच्च भूखंड को निम्नलिखित में से एक या अधिक मापदंडों द्वारा अनुकूलित किया जा सकता है -

  • Transpose (boolean) - z डेटा ट्रांसफर करता है।

अगर xtype (या ytype) "सरणी" के बराबर है, x / y निर्देशांक "x" / "y" द्वारा दिए गए हैं। यदि "बढ़ाया", x निर्देशांक "x0" और "द्वारा दिया गया हैdx"।

  • connectgaps पैरामीटर निर्धारित करता है कि z डेटा में अंतराल है या नहीं।

  • का डिफ़ॉल्ट मान ncontoursपैरामीटर 15. 15. आकृति की वास्तविक संख्या को `ncontours` के मान से कम या बराबर होने के लिए स्वचालित रूप से चुना जाएगा। एक प्रभाव केवल तभी होता है जब `ऑटोकंटूर`“ सच्चा ”होता है।

Contours प्रकार डिफ़ॉल्ट रूप से है: "levels"इसलिए डेटा को कई स्तरों के साथ समोच्च साजिश के रूप में दर्शाया गया है। यदि constrainडेटा अमान्य क्षेत्र के साथ बाधाओं के रूप में दर्शाया गया है जिसे निर्दिष्ट किया गया है operation तथा value मापदंडों।

showlines - यह निर्धारित करता है कि समोच्च रेखाएं खींची गई हैं या नहीं।

zauto है True डिफ़ॉल्ट रूप से और यह निर्धारित करता है कि इनपुट डेटा के संबंध में रंग डोमेन की गणना की गई है या नहीं (यहाँ `z`) या बॉर्डर पैक में`zmin`और`zmax`चूकFalse`जब` zmin` और `zmax` उपयोगकर्ता द्वारा निर्धारित किए जाते हैं।

तरकश कथानक

क्विवर प्लाट के रूप में भी जाना जाता है velocity plot। यह घटकों के साथ तीर के रूप में वेग वैक्टर प्रदर्शित करता है (u,v) बिंदुओं पर (x, y)। क्विवर प्लाट को ड्रा करने के लिए, हम उपयोग करेंगेcreate_quiver() में परिभाषित समारोह figure_factory मॉड्यूल प्लॉटली में।

प्लॉटली के पाइथन एपीआई में एक आंकड़ा कारखाना मॉड्यूल होता है जिसमें कई आवरण कार्य शामिल होते हैं जो अद्वितीय चार्ट प्रकार बनाते हैं जो अभी तक शामिल नहीं हैं plotly.js, प्लॉटली का ओपन-सोर्स ग्राफिंग लाइब्रेरी।

Create_quiver () फ़ंक्शन निम्नलिखित मापदंडों को स्वीकार करता है -

  • x - तीर स्थानों के x निर्देशांक

  • y - तीर स्थानों के y निर्देशांक

  • u - तीर वैक्टर के एक्स घटक

  • v - तीर वैक्टर के y घटक

  • scale - तीरों का आकार

  • arrow_scale - तीर की लंबाई।

  • angle - तीर का कोण।

निम्नलिखित कोड बृहस्पति नोटबुक में एक साधारण तरकश साजिश प्रस्तुत करता है -

import plotly.figure_factory as ff
import numpy as np
x,y = np.meshgrid(np.arange(-2, 2, .2), np.arange(-2, 2, .25))
z = x*np.exp(-x**2 - y**2)
v, u = np.gradient(z, .2, .2)

# Create quiver figure
fig = ff.create_quiver(x, y, u, v,
scale = .25, arrow_scale = .4,
name = 'quiver', line = dict(width = 1))
iplot(fig)

कोड का आउटपुट निम्नानुसार है -