इस ट्यूटोरियल में आप सीखेंगे कि Bokeh (और इसकी निर्भरताएँ) कैसे इंस्टॉल करें और Bokeh का उपयोग करके विज़ुअलाइज़ेशन के लिए बुनियादी घटक कैसे बनाएं। आप यह भी सीखेंगे कि बेसिक प्लॉट कैसे बनाएँ और उन्हें कस्टमाइज़ कैसे करें। इससे आगे के सेक्शनों में उन्नत फीचर्स सीखने की नींव तैयार होगी।
Bokeh क्या है?
Bokeh एक इंटरैक्टिव, डेटा विज़ुअलाइज़ेशन पैकेज है जो Python के साथ डायनेमिक विज़ुअलाइज़ेशन बनाने के लिए उपयोग होता है। Bokeh ओपन-सोर्स है और आप इससे ऐसे प्लॉट बना सकते हैं जो कोई रोचक कहानी बयान करें।
अन्य टूल्स से Bokeh को क्या अलग बनाता है?
विज़ुअलाइज़ेशन की दुनिया में डैशबोर्ड और विज़ुअलाइज़ेशन बनाने के लिए कई Python लाइब्रेरीज़ हैं, जिनमें शामिल हैं:
Bokeh
Matplotlib
Streamlit
dash
Seaborn
Plotly
Geoplotlib
Gleam
ggplot
Missingo
Bokeh निम्नलिखित के लिए उपयुक्त है:
आधुनिक ब्राउज़रों के लिए इंटरैक्टिव विज़ुअलाइज़ेशन बनाना
स्टैंडअलोन डॉक्युमेंट या सर्वर-समर्थित एप्लिकेशन बनाना
अभिव्यंजक और डायनेमिक ग्राफ़िक्स बनाना
बड़े, डायनेमिक या स्ट्रीमिंग डेटा के लिए डैशबोर्ड बनाना
यह Bokeh ट्यूटोरियल आपके लिए है...
यदि आप डेटा वैज्ञानिक, डेटा विश्लेषक, या मशीन लर्निंग इंजीनियर हैं। इस ट्यूटोरियल के लिए आवश्यक है कि आपको Python का बुनियादी ज्ञान हो और आप पैकेज इंस्टॉल और इम्पोर्ट करना जानते हों। आप सीखेंगे कि इंटरैक्टिव विज़ुअलाइज़ेशन कैसे बनाएँ और उन्हें Bokeh लाइब्रेरी के माध्यम से वेब पर कैसे डिप्लॉय करें। Bokeh आपकी मदद इंटरैक्टिव प्लॉट, डैशबोर्ड और डेटा एप्लिकेशन बनाने में कर सकता है।
Bokeh कैसे इंस्टॉल करें
Anaconda का उपयोग करके इंस्टॉल करें
यदि Anaconda आपका Python पैकेज मैनेजर है, तो आप Bokeh को Anaconda Prompt, Windows Command Prompt, या Bash Terminal से इस प्रकार इंस्टॉल कर सकते हैं:
conda install bokeh
conda install jinja2
conda install six
conda install requests
conda install tornado
conda install pyYaml
संचालित द्वारा
pip का उपयोग करके इंस्टॉल करें
आप इसे pip Python पैकेज मैनेजर से भी इस प्रकार इंस्टॉल कर सकते हैं:
pip install bokeh
pip install jinja2
pip install six
pip install requests
pip install tornado
pip install pyYaml
संचालित द्वारा
Jupyter Notebook के भीतर इंस्टॉल करें
!pip install bokeh
!pip install Jinja2
!pip install Six
!pip install Requests
!pip install Tornado
!pip install PyYaml
संचालित द्वारा
अपनी इंस्टॉलेशन की जाँच करें
from bokeh.io import output_notebook, show
output_notebook()संचालित द्वारा
समस्या समाधान
यदि आपको Bokeh इंस्टॉल करने में दिक्कत आ रही है, तो सहायता के लिए Discourse देखें। आप Bokeh संबंधी मुद्दों के समाधान के लिए Github भी देख सकते हैं।
Glyphs में आपका स्वागत है
आख़िर Glyphs क्या हैं?
Glyphs Bokeh के प्रमुख बिल्डिंग ब्लॉक्स हैं जो प्लॉट बनाते हैं। Bokeh में आप जो भी प्लॉट बनाते हैं उसमें glyph का तंत्र होता है। उदाहरण के लिए, जब आप एक स्कैटर प्लॉट बनाना चाहते हैं, तो आप किसी जानकारी को दर्शाने के लिए सर्कल को मार्कर के रूप में उपयोग कर सकते हैं। एक लाइन प्लॉट पर रेखा जानकारी को दर्शाएगी।
ये ज्यामितीय आकृतियाँ (रेखाएँ या वृत्त) ही Bokeh में glyphs कहलाती हैं। ये डेटा के बारे में दृश्य सूचना देती हैं। यह ट्यूटोरियल आपको glyphs को समझने में मदद करेगा, यह दिखाकर कि अलग-अलग प्रकार के प्लॉट बनाने के लिए glyphs का उपयोग कैसे करें। संक्षेप में, हम glyphs का उपयोग करके निम्नलिखित प्लॉट बनाएँगे:
लाइन प्लॉट: लाइन प्लॉट x और y-अक्षों के साथ डेटा बिंदुओं की गति को एक रेखा के रूप में प्रस्तुत करते हैं। टाइम सीरीज़ डेटा के लिए लाइन प्लॉट उपयुक्त होते हैं।
बार प्लॉट: बार प्लॉट प्रत्येक श्रेणी की गणना को एक कॉलम या फ़ील्ड के रूप में दर्शाते हैं। डेटा को श्रेणियों में बाँटने के लिए बार प्लॉट उपयुक्त होते हैं।
पैच प्लॉट: पैच प्लॉट किसी क्षेत्र के बिंदुओं को एक विशेष रंग से दिखाते हैं। ये एक ही डेटासेट के भीतर समूहों को अलग पहचान देने के लिए उपयुक्त होते हैं।
स्कैटर प्लॉट: स्कैटर प्लॉट दो चर के बीच संबंध और उनके बीच सहसंबंध की ताकत को दर्शाते हैं।
प्लॉटिंग के लिए Glyphs का उपयोग कैसे करें
Bokeh में प्लॉट बनाने के सामान्य चरण इस प्रकार हैं;
figure() फ़ंक्शन का उपयोग करके एक प्लॉट बनाएँ ताकि Bokeh को आरेख बनाने का निर्देश मिले।
शीर्षक, x-अक्ष और y-अक्ष के लेबल निर्धारित करें।
फिर figure में line() glyph जोड़कर एक लाइन प्लॉट बनाएँ और
cross() glyph से x और y बिंदुओं के प्रतिच्छेदों को चिह्नित करें।
लाइन प्लॉट बनाना
यह कोड आपको Bokeh में एक सरल लाइन प्लॉट बनाना दिखाता है।
#Import the required packagesfrom bokeh.io import output_notebook, output_file, show
from bokeh.plotting import figure
#Create two data arrays
x =[1,2,3,4,5,6,7,8,9,10]
y =[11,12,13,14,15,16,17,18,19,20]# Create plot
plot = figure(width=400, height=400, title="Simple line plot", x_axis_label="x-axis", y_axis_label ='y-axis')
plot.line(x,y, line_width=2, color='green')#Show plot
output_file(“line_plot1.html”)
show(plot)संचालित द्वारा
यह उदाहरण दिखाता है कि line() glyph का उपयोग करके x और y डेटा बिंदुओं के एक-आयामी क्रम से एक एकल लाइन glyph कैसे बनाया जाए। आप figure() फ़ंक्शन में प्लॉट की चौड़ाई और ऊँचाई, शीर्षक और अक्षों के लेबल निर्दिष्ट कर सकते हैं। line() glyph में, आप line_width आर्ग्युमेंट से रेखा की मोटाई और color आर्ग्युमेंट से रंग निर्दिष्ट कर सकते हैं।
बार प्लॉट बनाना
#Import thefrom bokeh.plotting import figure, show
animals =['lion','leopard','elephant','rhino','buffalo']
weight_tonnes =[190,90,3000,2300,590]
p = figure(x_range=animals, height=350, title="Big Five weight", x_axis_label ="Animal", y_axis_label ="Weight",
toolbar_location=None, tools="")
p.vbar(x=animals, top=weight_tonnes, width=0.9)
p.xgrid.grid_line_color =None
p.y_range.start =0
show(p)संचालित द्वारा
पैच प्लॉट बनाना
पैच प्लॉट किसी समूह या क्षेत्र के समान गुणों को दर्शाने के लिए क्षेत्रों को रंग से शेड करता है। आप इस प्रकार एक सरल पैच प्लॉट बना सकते हैं:
# Import required packagesfrom bokeh.io import output_file, show
from bokeh.plotting import figure
# Create the regions to chart
x_region =[[1,1,2],[2,3,3],[2,3,5,4]]
y_region =[[2,5,6],[3,6,7],[2,4,7,8]]# Create plot
plot = figure()
plot.patches(x_region, y_region, fill_color =['blue','yellow','green'], line_color ='black')
show(plot)संचालित द्वारा
यहाँ तीन अलग-अलग क्षेत्र हैं: पहला [1,1,2], जो y-अक्ष पर [2,5,6] से मैप है। दूसरा x-अक्ष पर [2,2,3] का क्षेत्र, जो y-अक्ष पर [3,6,7] से मैप है, और तीसरा क्षेत्र [2,3,5,4], जो y-अक्ष पर [2,4,7,8] से मैप है। patches glyph प्रत्येक क्षेत्र के लिए पैच बनाने में अलग-अलग रंगों का उपयोग करता है। _linecolor आर्ग्युमेंट प्रत्येक पैच की बॉर्डर का रंग निर्दिष्ट करता है।
स्कैटर प्लॉट बनाना
डेटा वैज्ञानिक अक्सर दो चरों के बीच संबंध जानने के लिए स्कैटर प्लॉट का उपयोग करते हैं। आप Bokeh में इस प्रकार एक सरल स्कैटर प्लॉट बना सकते हैं:
# Import required packagesfrom bokeh.io import output_file, show
from bokeh.plotting import figure
# Create x and y data points
x =[1,2,3,4,5]
y =[5,7,2,2,4]# Create plot
plot = figure(title ="Scatter plot", x_axis_label ="Label name of x axis", y_axis_label ="Label name of y axis")
plot.circle(x,y, size =30, alpha =0.5)# Add labels# Output the plot
show(plot)संचालित द्वारा
यह कोड स्कैटर प्लॉट पर x और y सूचियों के प्रतिच्छेद बिंदुओं को बनाने के लिए सर्कल मार्कर का उपयोग करता है। सर्कल की जगह आप निम्न जैसे अन्य मार्कर भी उपयोग कर सकते हैं:
cross()
x()
diamond()
diamond_cross()
circle_x()
circle_cross()
triangle()
inverted_triangle()
square_x()
square_cross()
asterisk()
size = 30 आर्ग्युमेंट प्रत्येक सर्कल का आकार निर्धारित करता है। नीचे का चित्र Bokeh में उपलब्ध सभी मार्करों का सार देता है।
alpha आर्ग्युमेंट सर्कल की पारदर्शिता निर्दिष्ट करता है। इसका मान 0 और 1 के बीच होता है, जहाँ 0 पूरी तरह पारदर्शी और 1 अपारदर्शी होता है।
निष्कर्ष
यह ट्यूटोरियल Bokeh का परिचय एक इंटरैक्टिव और उच्च-स्तरीय विज़ुअलाइज़ेशन टूल के रूप में कराता है। ट्यूटोरियल यह नींव रखता है कि Bokeh का उपयोग करते समय आप क्या अपेक्षा कर सकते हैं। आपने glyphs की अवधारणा का उपयोग करके Bokeh में लाइन प्लॉट, बार प्लॉट, पैच प्लॉट और स्कैटर प्लॉट बनाना देखा। अधिक विवरण के लिए कि Bokeh में आप किन-किन प्रकार के चार्ट बना सकते हैं, निम्न Bokeh प्रलेखन देखें।
इस ट्यूटोरियल में आप सीखेंगे कि Bokeh (और इसकी निर्भरताएँ) कैसे इंस्टॉल करें और Bokeh का उपयोग करके विज़ुअलाइज़ेशन के लिए बुनियादी घटक कैसे बनाएं। आप यह भी सीखेंगे कि बेसिक प्लॉट कैसे बनाएँ और उन्हें कस्टमाइज़ कैसे करें। इससे आगे के सेक्शनों में उन्नत फीचर्स सीखने की नींव तैयार होगी।
Bokeh क्या है?
Bokeh एक इंटरैक्टिव, डेटा विज़ुअलाइज़ेशन पैकेज है जो Python के साथ डायनेमिक विज़ुअलाइज़ेशन बनाने के लिए उपयोग होता है। Bokeh ओपन-सोर्स है और आप इससे ऐसे प्लॉट बना सकते हैं जो कोई रोचक कहानी बयान करें।
अन्य टूल्स से Bokeh को क्या अलग बनाता है?
विज़ुअलाइज़ेशन की दुनिया में डैशबोर्ड और विज़ुअलाइज़ेशन बनाने के लिए कई Python लाइब्रेरीज़ हैं, जिनमें शामिल हैं:
Bokeh निम्नलिखित के लिए उपयुक्त है:
यह Bokeh ट्यूटोरियल आपके लिए है...
यदि आप डेटा वैज्ञानिक, डेटा विश्लेषक, या मशीन लर्निंग इंजीनियर हैं। इस ट्यूटोरियल के लिए आवश्यक है कि आपको Python का बुनियादी ज्ञान हो और आप पैकेज इंस्टॉल और इम्पोर्ट करना जानते हों। आप सीखेंगे कि इंटरैक्टिव विज़ुअलाइज़ेशन कैसे बनाएँ और उन्हें Bokeh लाइब्रेरी के माध्यम से वेब पर कैसे डिप्लॉय करें। Bokeh आपकी मदद इंटरैक्टिव प्लॉट, डैशबोर्ड और डेटा एप्लिकेशन बनाने में कर सकता है।
Bokeh कैसे इंस्टॉल करें
Anaconda का उपयोग करके इंस्टॉल करें
यदि Anaconda आपका Python पैकेज मैनेजर है, तो आप Bokeh को Anaconda Prompt, Windows Command Prompt, या Bash Terminal से इस प्रकार इंस्टॉल कर सकते हैं:
pip का उपयोग करके इंस्टॉल करें
आप इसे pip Python पैकेज मैनेजर से भी इस प्रकार इंस्टॉल कर सकते हैं:
Jupyter Notebook के भीतर इंस्टॉल करें
अपनी इंस्टॉलेशन की जाँच करें
समस्या समाधान
यदि आपको Bokeh इंस्टॉल करने में दिक्कत आ रही है, तो सहायता के लिए Discourse देखें। आप Bokeh संबंधी मुद्दों के समाधान के लिए Github भी देख सकते हैं।
Glyphs में आपका स्वागत है
आख़िर Glyphs क्या हैं?
Glyphs Bokeh के प्रमुख बिल्डिंग ब्लॉक्स हैं जो प्लॉट बनाते हैं। Bokeh में आप जो भी प्लॉट बनाते हैं उसमें glyph का तंत्र होता है। उदाहरण के लिए, जब आप एक स्कैटर प्लॉट बनाना चाहते हैं, तो आप किसी जानकारी को दर्शाने के लिए सर्कल को मार्कर के रूप में उपयोग कर सकते हैं। एक लाइन प्लॉट पर रेखा जानकारी को दर्शाएगी।
ये ज्यामितीय आकृतियाँ (रेखाएँ या वृत्त) ही Bokeh में glyphs कहलाती हैं। ये डेटा के बारे में दृश्य सूचना देती हैं। यह ट्यूटोरियल आपको glyphs को समझने में मदद करेगा, यह दिखाकर कि अलग-अलग प्रकार के प्लॉट बनाने के लिए glyphs का उपयोग कैसे करें। संक्षेप में, हम glyphs का उपयोग करके निम्नलिखित प्लॉट बनाएँगे:
प्लॉटिंग के लिए Glyphs का उपयोग कैसे करें
Bokeh में प्लॉट बनाने के सामान्य चरण इस प्रकार हैं;
लाइन प्लॉट बनाना
यह कोड आपको Bokeh में एक सरल लाइन प्लॉट बनाना दिखाता है।
यह उदाहरण दिखाता है कि line() glyph का उपयोग करके x और y डेटा बिंदुओं के एक-आयामी क्रम से एक एकल लाइन glyph कैसे बनाया जाए। आप figure() फ़ंक्शन में प्लॉट की चौड़ाई और ऊँचाई, शीर्षक और अक्षों के लेबल निर्दिष्ट कर सकते हैं। line() glyph में, आप line_width आर्ग्युमेंट से रेखा की मोटाई और color आर्ग्युमेंट से रंग निर्दिष्ट कर सकते हैं।
बार प्लॉट बनाना
पैच प्लॉट बनाना
पैच प्लॉट किसी समूह या क्षेत्र के समान गुणों को दर्शाने के लिए क्षेत्रों को रंग से शेड करता है। आप इस प्रकार एक सरल पैच प्लॉट बना सकते हैं:
यहाँ तीन अलग-अलग क्षेत्र हैं: पहला [1,1,2], जो y-अक्ष पर [2,5,6] से मैप है। दूसरा x-अक्ष पर [2,2,3] का क्षेत्र, जो y-अक्ष पर [3,6,7] से मैप है, और तीसरा क्षेत्र [2,3,5,4], जो y-अक्ष पर [2,4,7,8] से मैप है। patches glyph प्रत्येक क्षेत्र के लिए पैच बनाने में अलग-अलग रंगों का उपयोग करता है। _linecolor आर्ग्युमेंट प्रत्येक पैच की बॉर्डर का रंग निर्दिष्ट करता है।
स्कैटर प्लॉट बनाना
डेटा वैज्ञानिक अक्सर दो चरों के बीच संबंध जानने के लिए स्कैटर प्लॉट का उपयोग करते हैं। आप Bokeh में इस प्रकार एक सरल स्कैटर प्लॉट बना सकते हैं:
यह कोड स्कैटर प्लॉट पर x और y सूचियों के प्रतिच्छेद बिंदुओं को बनाने के लिए सर्कल मार्कर का उपयोग करता है। सर्कल की जगह आप निम्न जैसे अन्य मार्कर भी उपयोग कर सकते हैं:
size = 30 आर्ग्युमेंट प्रत्येक सर्कल का आकार निर्धारित करता है। नीचे का चित्र Bokeh में उपलब्ध सभी मार्करों का सार देता है।
alpha आर्ग्युमेंट सर्कल की पारदर्शिता निर्दिष्ट करता है। इसका मान 0 और 1 के बीच होता है, जहाँ 0 पूरी तरह पारदर्शी और 1 अपारदर्शी होता है।
निष्कर्ष
यह ट्यूटोरियल Bokeh का परिचय एक इंटरैक्टिव और उच्च-स्तरीय विज़ुअलाइज़ेशन टूल के रूप में कराता है। ट्यूटोरियल यह नींव रखता है कि Bokeh का उपयोग करते समय आप क्या अपेक्षा कर सकते हैं। आपने glyphs की अवधारणा का उपयोग करके Bokeh में लाइन प्लॉट, बार प्लॉट, पैच प्लॉट और स्कैटर प्लॉट बनाना देखा। अधिक विवरण के लिए कि Bokeh में आप किन-किन प्रकार के चार्ट बना सकते हैं, निम्न Bokeh प्रलेखन देखें।