डीसी अच्छा है क्योंकि आप सीधे ग्राफ ऑब्जेक्ट्स में आयामों और समूहों में प्रवेश कर सकते हैं और आपको क्रॉसफ़िल्टर में परिवर्तनों पर मैन्युअल रूप से अपडेट करने की आवश्यकता नहीं है।
यदि आप क्रॉसफिल्टर और एनवीडी 3 को एक साथ जोड़ना चाहते हैं, तो आपको क्रॉसफिल्टर आयामों/समूहों की स्थिति में परिवर्तनों पर एनवीडी 3 डोमेन/रेंज या डेटा मैन्युअल रूप से अपडेट करना होगा। यह मूल रूप से क्रॉसफिल्टर पेज उदाहरण को संभालता है यदि आप स्रोत को चेक करते हैं: http://square.github.io/crossfilter/। जब भी ब्रश बदलते हैं, तो ग्राफ को फिर से खींचा जाता है और परिवर्तनों को प्रतिबिंबित करने के लिए अद्यतन किया जाता है।
नए डेटा को फिर से निकालने और प्रतिबिंबित करने के लिए एनवीडी 3 चार्ट प्राप्त करना आसान है। आप बस डेटम अपडेट कर सकते हैं और फिर बारकार्ट को कॉल कर सकते हैं ... उदाहरण के लिए।
var svg = d3.select("body").append("svg").style("height", "500px");
var barChart = nv.models.multiBarChart();
// Just execute this block each time the chart data changes
// and the chart will update in a nicely animated manner
svg
.datum(chartData)
.transition()
.duration(500)
.call(barChart);
मुश्किल हिस्सा वास्तव में होगा यदि आप एनवीडी 3 चार्ट में ब्रश बनाना चाहते थे। यह मुश्किल हो सकता है क्योंकि आपको ब्रश को एनवीडी 3 चार्ट के साथ सिंक किया जाना चाहिए क्योंकि उनका डेटा बदल गया है ताकि वे सही तरीके से आकर्षित हो जाएं, लेकिन यदि आप सिर्फ अन्य चार्ट की ब्रश घटनाओं के आधार पर एनवीडी 3 चार्ट अपडेट सही ढंग से करना चाहते हैं या आपको ब्रश के बारे में परवाह नहीं है, यह बिल्कुल कठिन नहीं होना चाहिए। ब्रश पर अच्छा ट्यूटोरियल यहां है: http://bl.ocks.org/mbostock/1667367
यहां तक कि कहा गया है कि, एनवीडी 3 लगभग सभी अंतर्निहित चार्ट घटकों (स्केल, अक्ष, आदि) को उजागर करने के बारे में बहुत अच्छा है, जिसका अर्थ है कि आप एक्सेस, जोड़ और अपडेट कर सकते हैं आवश्यकतानुसार ब्रश करें और फिर ब्रश ईवेंट के लिए पंजीकरण करें, क्रॉसफ़िल्टर अपडेट करें, और उसके बाद चार्ट को आवश्यकतानुसार दोबारा हटा दें।
यह भी खुला स्रोत है, इसलिए आपका दूसरा विकल्प रेपो को फोर्क करना होगा और ब्रश समर्थन और घटनाओं को सीधे स्रोत में जोड़ना होगा।
व्यक्तिगत रूप से, मेरे पास एक कस्टम टाइमलाइन चार्ट है जो ब्रश अपडेट होने पर ब्रश और आग की घटनाओं का उपयोग करता है। घटनाओं पर, मैं फिर एनवीडी 3 स्टैक्ड बार चार्ट के लिए डेटा अपडेट करता हूं और इसे फिर से चलाता हूं। इसलिए, जैसे ही आप टाइमलाइन फ़िल्टर बदलते हैं, बार चार्ट एनिमेट और अपडेट करता है। कार्रवाई में इसे देखना बहुत मुश्किल है।
किसी भी तरह से, एक दिलचस्प चुनौती की तरह लगता है। शुभ लाभ!
मुझे इस तरह के एकीकरण के बारे में पता नहीं है। यदि यह आसान है तो पूरी तरह से आपकी परिभाषा पर निर्भर करता है; मैं निश्चित रूप से घटकों से परिचित होने के बिना इसका प्रयास नहीं करता। –
मैं अभी भी वही काम कर रहा हूं, एनवीडी 3 में कुछ अच्छे चार्ट हैं लेकिन कोई फ़िल्टर नहीं है, डीसीजेजे फ़िल्टर डेटा अच्छी तरह से लेकिन इतना सुंदर नहीं है।क्या आप मुझसे संपर्क कर सकते हैं ताकि हम इसके बारे में कुछ अनुभव साझा कर सकें? [email protected]। धन्यवाद! –