जावास्क्रिप्ट चार्ट लाइब्रेरी


223

क्या कोई विशेष जावास्क्रिप्ट चार्टिंग लाइब्रेरी की सिफारिश करेगा - विशेष रूप से एक जो फ्लैश का उपयोग बिल्कुल नहीं करता है?

जवाबों:


160

शुद्ध जावास्क्रिप्ट चार्टिंग के लिए ओपन सोर्स और वाणिज्यिक समाधानों की संख्या बढ़ रही है जिन्हें फ्लैश की आवश्यकता नहीं है। इस प्रतिक्रिया में मैं केवल ओपन सोर्स विकल्प प्रस्तुत करूंगा।

ग्राफिक्स के लिए जावास्क्रिप्ट समाधान के 2 मुख्य वर्ग हैं जिनकी आवश्यकता नहीं है Flash:

  • कैनवस-आधारित, IE में ExplorerCanvas का उपयोग करके प्रदान किया गया जो कि VML पर निर्भर करता है
  • मानक-आधारित ब्राउज़रों पर SVG, IE में VML के रूप में प्रदान किया गया

दोनों दृष्टिकोणों के पक्ष और विपक्ष हैं, लेकिन एक चार्टिंग लाइब्रेरी के लिए मैं बाद में सिफारिश करूंगा क्योंकि यह DOM के साथ अच्छी तरह से एकीकृत है, DOM के साथ चार्ट तत्वों में हेरफेर करने की अनुमति देता है, और सबसे महत्वपूर्ण रूप से DOM ईवेंट्स सेट कर रहा है। इसके विपरीत कैनवस चार्टिंग लाइब्रेरी को घटनाओं को प्रबंधित करने के लिए DOM व्हील को फिर से बनाना होगा। इसलिए जब तक आप बिना किसी इवेंट हैंडलिंग के स्टेटिक ग्राफ बनाने का इरादा रखते हैं, एसवीजी / वीएमएल समाधान बेहतर होना चाहिए।

एसवीजी / वीएमएल समाधानों के लिए कई विकल्प हैं, जिनमें शामिल हैं:

राफेल एक बहुत सक्रिय, अच्छी तरह से बनाए रखा गया है, और IE 6 से 8, फ़ायरफ़ॉक्स, ओपेरा, सफारी, क्रोम, और कोनेकर सहित बहुत अच्छे क्रॉस-ब्राउज़र समर्थन के साथ परिपक्व, ओपन-सोर्स ग्राफिक लाइब्रेरी है। राफेल किसी भी जावास्क्रिप्ट ढांचे पर निर्भर नहीं करता है और इसलिए इसका उपयोग प्रोटोटाइप, jQuery, Dojo, Mootools, आदि के साथ किया जा सकता है ...

राफेल पर आधारित कई चार्टिंग लाइब्रेरी हैं, जिनमें शामिल हैं (लेकिन इन तक सीमित नहीं):

  • gRaphael , राफेल ग्राफिक लाइब्रेरी का विस्तार
  • Ico , जटिल चार्ट बनाने के लिए एकल फ़ंक्शन कॉल के आधार पर एक सहज ज्ञान युक्त एपीआई के साथ

प्रकटीकरण: मैं गीथूब पर Ico कांटे में से एक का डेवलपर हूं ।


5
एलेक्स यंग द्वारा ग्राफ्को और इको प्रारंभिक इको के दो असंगत कांटे हैं। इसलिए यह बताना सही नहीं है कि इको ग्रैफ़िको बन गया है। Grafico सिर्फ एक कांटे की जा रही है।
जीन विंसेंट

यह ध्यान दिया जाना चाहिए कि राफेल अब बनाए रखने के लिए प्रतीत नहीं होता है। आखिरी कमिटमेंट जुलाई 2010 या तो था।
एलेस्टेयर पिट्स

1
बस राफेल चार्ट को डाउनलोड किया, इसे बहुत पसंद किया लेकिन कोई डॉक्स नहीं, सिर्फ फॉरवर्ड करने के लिए।
ऑर्बिट

@ एलाएयर: राफेल अब सेन्सा द्वारा प्रायोजित और विकसित है ... या इसलिए वे कहते हैं :)
रॉय टिंकर

1
पूर्व-हनीकॉम्ब एंड्रॉइड में एसवीजी समर्थित नहीं है। यदि वर्तमान Android उपकरणों की एक विस्तृत श्रृंखला पर चार्ट को देखने में सक्षम होना एक आवश्यकता है, तो आपको एक कैनवस-आधारित समाधान चुनना होगा। स्नेहा टच चार्ट पर यह लेख सामान्य रूप से मोबाइल चार्टिंग पर अधिक विवरण में जाता है, और स्नेहा टच कैनवस मार्ग पर क्यों गया।
पल्लवी एंडरसन

70

यदि आप jQuery का उपयोग कर रहे हैं, तो मुझे फ़्लोट बहुत अच्छा लग रहा है - उदाहरणों को देखने की कोशिश करें कि क्या वे आपकी ज़रूरतों के अनुरूप हैं, लेकिन मैंने उन्हें अपने वर्तमान प्रोजेक्ट के लिए जो सबसे ज़्यादा ज़रूरत है, वह करने के लिए पाया है।

इसके अतिरिक्त एक्सटीजेएस 4.0 ने चार्ट का एक शानदार सेट पेश किया है - बहुत शक्तिशाली है, और लाइव डेटा के साथ काम करने के लिए डिज़ाइन किया गया है।


2
यह वही लाइब्रेरी है जिसका उपयोग ज्यॉफ डेलगास ने स्टैकओवरफ्लो पर यहां प्रतिष्ठा का ग्राफ बनाने के लिए किया था। यह वास्तव में किट का एक अच्छा सा है।
चार्ल्स रॉपर

प्लॉट के बारे में मेरी एकमात्र वास्तविक शिकायत यह है कि जब IE में रेंडरिंग किसी अन्य ज़ूम स्तर पर भयानक लगती है तो 100% (यानी सभी लाइनें / ब्लॉक एक साथ स्केल नहीं होते हैं - यह निश्चित रूप से उच्च संकल्प डिस्प्ले वाले हमारे लिए एक समस्या है)।
3/09

2
ऐसा लगता है कि फ्लोट चार्ट दूसरों की तुलना में अच्छे दिखते हैं, जिन्हें मैंने देखा है। यहाँ 20 जावास्क्रिप्ट चार्ट पुस्तकालयों का लिंक दिया गया है: javascript.open-lbooks.com/utilities/chart/…
B सेवन

मुझे भी फ़्लोट पसंद है, इससे पहले भी कई बार अलग-अलग वेब ऐप पर इसका इस्तेमाल किया है।
फेडिक

1
मुझे सामान्य रूप से फ़्लोट पसंद है लेकिन यह चाहता है कि सभी डेटा संख्याएं हों, इसलिए यदि आप प्रति ग्राहक (नाम से) या उत्पाद के अनुसार बिक्री करना चाहते हैं, तो यह काम नहीं करेगा
Zachary K

60

की जाँच करें http://www.highcharts.com !

Highcharts एक चार्टिंग लाइब्रेरी है जिसे शुद्ध जावास्क्रिप्ट में लिखा गया है, जो आपकी वेब साइट या वेब एप्लिकेशन में इंटरेक्टिव चार्ट जोड़ने का एक आसान तरीका है। Highcharts वर्तमान में लाइन, स्पलाइन, एरिया, एरियास्पलाइन, कॉलम, बार, पाई और स्कैटर चार्ट प्रकारों का समर्थन करता है।


12
इस बात की ओर इशारा करते हुए कि यह पुस्तकालय गैर-व्यावसायिक उपयोग के लिए स्वतंत्र है, लेकिन एकल-साइटों और बहु-साइटों के लिए पैसा खर्च करना पड़ता है। यह हालांकि एक काफी उचित मूल्य की तरह लगता है।
निक स्पेसक

पहले तो यह एक बेशर्म प्लग के रूप में लेकिन वे वास्तव में भयानक लग रहे हो !! हालांकि यह मुफ्त में वाणिज्यिक उपयोग नहीं है, मेरे पास कोई संदर्भ नहीं है कि मूल्य निर्धारण उचित है या नहीं लेकिन वे एक नज़र में ठीक लगते हैं!
१२:०२ पर ट्रूफा

यह वही चार्टिंग लाइब्रेरी है जिसका उपयोग CloudFlare.com में किया जाता है, और यह वास्तव में बहुत अच्छी लगती है। मैं DevExpress चार्टिंग लाइब्रेरी का उपयोग करने वाला था, जो कि ASP.NET और रेंडरर्स और इमेज है जब मैं हाईचर्ट्स लाइब्रेरी पर ठोकर खाई थी। मुझे एक ही बार में यकीन हो गया कि जाने का रास्ता यही है। जब मुझे पता चला कि CloudFlare, जिसमें एक सबसे अधिक आंख को पकड़ने वाला डैशबोर्ड / एनालिटिक है, मैंने देखा है, इसका उपयोग भी मैं बेच दिया गया था! मैं वर्तमान में इसके साथ प्रयोग कर रहा हूं, और इसने मेरे वेबपेज में एक चार्ट को एम्बेड करने के अपने पहले प्रयास में काम किया ... इसलिए इसका उपयोग करना भी आसान लगता है!
लाउडेनवियर

1
Highcharts के लिए एक और वोट। मैं वर्तमान में इसका उपयोग कर रहा हूं, और यह बहुत अच्छा है। JQuery, Mootools और प्रोटोटाइप का समर्थन करता है, और इसे सेटअप और उपयोग करना बहुत आसान है।
gnclmorais

1
Stackoverflow खुद ही highcharts stackoverflow.com/users/22656/jon-skeet?tab=reputation
Scott

36

यह शायद वह नहीं है जो आप ढूंढ रहे हैं, लेकिन
Google का चार्ट एपीआई बहुत अच्छा है और उपयोग करने में आसान है।


16
इसकी नहीं जावास्क्रिप्ट
user102008

5
बस याद रखें, Google चार्ट के लिए इंटरनेट कनेक्शन की आवश्यकता है और क्लाइंट अनुरोधों की संख्या पर कुछ सीमाएं भी हैं
फेडमीच

@ user102008: यह अब है :) (यदि आप अभी भी पुरानी छवि आधारित एपीआई तक पहुँच सकते हैं)
Spycho

Google चार्ट API का उपयोग ऑफ़लाइन नहीं किया जा सकता है, जो मोबाइल विकास के लिए बुरा है।
पुराने छिपकली

मुझे एक क्षैतिज प्रकार कैंडलस्टिक करने की आवश्यकता है, किसी को पता है कि क्या यह Google चार्ट एपीआई के साथ संभव है?
टॉम स्टिकेल

15

एसवीजी पर आधारित एक और जावास्क्रिप्ट लाइब्रेरी है। इसे प्रोटॉविस कहा जाता है और यह स्टैनफोर्ड विज़ुअलाइज़ेशन ग्रुप से आता है

यह अच्छा इंटरैक्टिव ग्राफिक्स और विज़ुअलाइज़ेशन बनाने की भी अनुमति देता है।

http://vis.stanford.edu/protovis/ex/

हालांकि यह केवल आधुनिक वेब ब्राउज़र के लिए है

अद्यतन: प्रोटॉविस टीम ने एक अन्य पुस्तकालय में स्थानांतरित किया है जिसे d3.js (डेटा ड्रिव्ड डॉक्यूमेंट्स) कहा जाता है:

"प्रोटॉविस टीम अब एनीमेशन और इंटरेक्शन के लिए बेहतर समर्थन के साथ एक नया विज़ुअलाइज़ेशन लाइब्रेरी, डी 3।जेएस विकसित कर रही है। डी 3 प्रोटॉविस में कई अवधारणाओं पर बनाता है"

नया पुस्तकालय अब इसमें पाया जा सकता है:

http://mbostock.github.com/d3/

अद्यतन 2:

"रिक्शा" इंटरैक्टिव समय श्रृंखला ग्राफ बनाने के लिए एक जावास्क्रिप्ट टूलकिट है। D3.js पर आधारित है जो d3.js के साथ बहुत सारे काम को सरल बनाता है, हालांकि थोड़ा कम शक्तिशाली है।

http://code.shutterstock.com/rickshaw/


एक त्वरित नज़र के आधार पर, मुझे नहीं लगता कि डी 3 "प्रोटॉविस" की जगह लेता है। मैं कहूंगा कि टीम "आगे बढ़ी" क्योंकि वे इसे और अधिक दिलचस्प और अत्याधुनिक के रूप में देखते हैं।
डेविड जे।

14

मैं हाल ही में एक जावास्क्रिप्ट चार्टिंग लाइब्रेरी की तलाश में था और मैंने jqplot पर बसने से पहले एक पूरे झुंड का मूल्यांकन किया जो मेरी आवश्यकताओं को बहुत अच्छी तरह से फिट करता है। जैसा कि जीन विंसेंट के जवाब में बताया गया है कि आप वास्तव में कैनवास आधारित और एसवीजी आधारित समाधान के बीच चयन कर रहे हैं।

मेरे दिमाग में प्रमुख पेशेवरों और विपक्ष इस प्रकार थे। यदि आप अत्यधिक गतिशील / इंटरैक्टिव चार्ट का निर्माण करना चाहते हैं, तो राफेल (और ऑफशूट) जैसे एसवीजी आधारित समाधान महान हैं। या यदि आप चार्टिंग की आवश्यकताएं मानदंड के बाहर हैं (उदाहरण के लिए आप कुछ प्रकार के हाइब्रिड चार्ट बनाना चाहते हैं या आप एक नए दृश्य के साथ आए हैं जो किसी और ने अभी तक नहीं सोचा है)। नकारात्मक पक्ष सीखने की अवस्था है और कोड की मात्रा आपको लिखनी होगी। आप कुछ ही मिनटों में चार्ट को बाहर नहीं करेंगे, कुछ वास्तविक सीखने के समय को निवेश करने के लिए तैयार रहें और फिर अपेक्षाकृत सरल चार्ट बनाने के लिए एक अच्छी मात्रा में कोड लिखें।

यदि आपकी चार्टिंग आवश्यकताएं यथोचित मानक हैं, उदाहरण के लिए, आप सीमित अन्तरक्रियाशीलता के साथ कुछ लाइन या बार ग्राफ या शायद एक पाई चार्ट या दो चाहते हैं, तो यह कैनवास आधारित समाधानों को देखने लायक है। शायद ही कोई सीखने की अवस्था होगी, आप कुछ ही मिनटों के भीतर बुनियादी चार्ट प्राप्त करने में सक्षम होंगे, आपको बहुत सारे कोड लिखने की आवश्यकता नहीं होगी, बुनियादी जावास्क्रिप्ट / jquery की कुछ पंक्तियाँ आपको सभी की आवश्यकता होंगी। बेशक आप केवल विशिष्ट प्रकार के चार्ट का उत्पादन करने में सक्षम होंगे जो पुस्तकालय का समर्थन करता है, आमतौर पर लाइन, बार, पाई के विभिन्न स्वादों तक सीमित होता है। अन्तरक्रियाशीलता के विकल्प बेहद सीमित होंगे, यह कि वहाँ के कई पुस्तकालयों के लिए अस्तित्वहीन कहना है, हालांकि कुछ सीमित होवर प्रभाव बेहतर लोगों के साथ संभव हैं।

मैं JQplot के साथ गया था जो कि एक कैनवास आधारित समाधान है क्योंकि मुझे केवल कुछ मानक प्रकार के चार्ट की आवश्यकता थी। अपने शोध से और विभिन्न विकल्पों के साथ खेलने के बाद मैंने पाया कि यह काफी हद तक पूर्ण-विशेषताओं वाला है (यदि आप केवल मानक चार्ट के बाद हैं) और उपयोग करने में बेहद आसान हैं, तो मैं आपकी आवश्यकताओं के समान होने पर इसकी सिफारिश करूंगा।

संक्षेप में, सरल और अब चार्ट चाहते हैं, तो JQplot के साथ जाएं। जटिल / अलग और समय के लिए नहीं दबाया जाता है तो राफेल और दोस्तों के साथ जाएं।


14

jqPlot बढ़िया है। यदि आपकी आवश्यकताएं पूरी तरह से "सामान्य" हैं और आप बस कुछ चार्ट बनाना चाहते हैं, तो आप शायद js चार्टिंग विकल्पों की मात्रा से अभिभूत हैं। यह मानते हुए कि आप अनुसंधान के घंटे नहीं करना चाहते हैं, बस jqPlot के साथ जाएं क्योंकि यह शायद आपकी सबसे अच्छी शर्त है। इसमें ज्यादातर लोगों के लिए ज्यादातर उपयोग के मामले शामिल हैं। कुछ विकल्पों को एक निश्चित प्रकार के चार्ट पर विशेष किया जाता है या एक निश्चित उपयोग के मामले को ध्यान में रखते हुए बनाया जाता है।


मुझे लगता है कि कुछ शोध करने के बाद। अभी यह सबसे अच्छा मुफ्त उपलब्ध जेएस चार्ट पुस्तकालयों में से एक जैसा दिखता है।
jturcotte

4

कुछ प्रकार के उत्तर के रूप में, d3.js http://mbostock.github.com/d3/ आज़माएं

यह प्रोटोविस की निरंतरता है।
फ़्लोट का बड़ा अंतर समर्थित सुविधाओं की संख्या में है।
हालांकि प्लॉट सरल हो सकता है, d3.js निश्चित रूप से अधिक शक्तिशाली है।


3

Flotr एक और शुद्ध जावास्क्रिप्ट चार्ट-लाइब्रेरी है, जो प्रोटोटाइप पर आधारित है और Flot से प्रेरित है



3

मैं शुद्ध जावास्क्रिप्ट सदिश के साथ शुद्ध जावास्क्रिप्ट चार्टिंग के लिए gRaphaël की सलाह दूंगा जो कि ( Raphaël ) पर बनाया गया है ।

gRaphaël वर्तमान में फ़ायरफ़ॉक्स 3.0+, सफारी 3.0+, ओपेरा 9.5+ और इंटरनेट एक्सप्लोरर 6.0+ का समर्थन करता है।


1
बस सिर देना चाहते हैं कि इस दायित्व के लिए कोई डॉक्स नहीं हैं, हालांकि यह बहुत अच्छा है।
ऑर्बिट


3

एक और RGraph है: जावास्क्रिप्ट चार्ट और ग्राफ लाइब्रेरी:

http://www.rgraph.net

कैनवस आधारित है इसलिए यह तेज़ है और लगभग 20 विभिन्न चार्ट प्रकार हैं। यह गैर-व्यावसायिक उपयोग के लिए भी मुफ़्त है!


2

मेरे पसंदीदा (प्लॉट) का उल्लेख पहले ही किया जा चुका है।

लेकिन ऑर्थो की जांच अवश्य करें । यह ट्री चार्ट और समयसीमा के लिए उत्कृष्ट है।


2

डोजो चार्टिंग लाइब्रेरी में बहुत सारी गतिविधियां होती हैं, और जो मैं महान है वह एक आकाशवाणी अनुप्रयोग के अंदर भी समस्याओं के बिना उपयोग कर रहा है, बहुत अच्छा! उदाहरण के लिए देखें http://www.sitepen.com/blog/2008/05/27/dojo-charting-event-support-has-land/




2

हमने अभी अपने नए स्टार्टअप के लिए TechOctave Charts Suite का लाइसेंस खरीदा है । मैं उन्हें बहुत सलाह देता हूं। लाइसेंसिंग सरल है। चार्ट बहुत अच्छा लग रहा है! शुरुआत करना आसान था और जब हमें इसकी आवश्यकता होती है, तब इसके लिए एक शक्तिशाली एपीआई होता है। मैं हैरान था कि कोड कितना साफ और विस्तृत है। वास्तव में हमारी पसंद से खुश हैं।



1

एक जावास्क्रिप्ट पुस्तकालय नहीं है, लेकिन यह एक उपयुक्त विकल्प हो सकता है - Google चार्ट देखें जहां आप उनकी वेब सेवा के लिए डेटा को नष्ट करके चार्ट बना सकते हैं।




1

सेन्चा ने राफेल का अधिग्रहण किया और अब उनके चार्ट संस्करण 4 के रूप में शुद्ध जावास्क्रिप्ट हैं। ऊपर उल्लेखित आश्चर्य और हाईचर्ट्स उनके दो पसंदीदा हैं।

http://www.sencha.com/



0

मैं अर्काडिएचर्स की सिफारिश कर सकता हूं । जावास्क्रिप्ट और GWT के लिए एक नया पेशेवर चार्टिंग पुस्तकालय। प्लगइन्स के बिना सभी ब्राउज़रों में चलता है। उपयोग में आसान और तेज़: कोड की कुछ पंक्तियों के साथ शानदार दिखने वाले चार्ट बनाता है। गैर वाणिज्यिक उपयोग के लिए मुफ़्त।


मैं इसके साथ खेल रहा था, और मैंने देखा कि वेब साइट पर व्यावसायिक लाइसेंस प्राप्त करने का कोई तरीका नहीं है। वास्तव में, वेब साइट स्पष्ट नहीं है कि यह मुफ्त है या नहीं।
zumalifeguard

तुम सही हो। वेबसाइट को अपडेट कर दिया गया है, जिससे अब आप आसानी से पता लगा सकते हैं कि आपकी आवश्यकताओं के लिए कौन सा वाणिज्यिक लाइसेंस उपयुक्त है: आर्केडियाचर्ट्स
होआंग-ट्रान वो


0

मामले में आप की जरूरत है केवल बार चार्ट है। मैंने कुछ कोड प्रकाशित किए हैं जो मैं एक पुराने प्रोजेक्ट में उपयोग कर रहा हूं। किसी ने मुझसे कहा कि वीएमएल कार्यान्वयन IE के हाल के संस्करणों पर टूट गया है, लेकिन एसवीजी को बस ठीक काम करना चाहिए। हो सकता है कि परियोजना में वापस आ रहा हो और मेरे पास पहले से मौजूद कुछ सर्वरसाइड रेंडरर्स हो और शायद वेबलॉग रेंडरिंग लेयर। एक लिंक है: http://blog.conquex.com/?p=64


0

शायद नहीं कि ओपी क्या देख रहा है, लेकिन चूंकि यह सवाल जेएस चार्टिंग लाइब्रेरी विकल्पों की एक सूची बन गया है: jQuery स्पार्कलाइन्स वास्तव में अच्छा है।


0

की जाँच करें ZingChart एचटीएमएल 5 कैनवास, SVG, VML और फ्लैश चार्ट । बहुत शक्तिशाली और संगत पुस्तकालय। मैं ज़िंग टीम पर हूं - ट्विटर @zingchart पर हमारा उल्लेख करें या support@zingchart.com पर किसी भी प्रश्न को शूट करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.