दिलचस्प पोस्ट
एक चिड़ियाघर से वर्ष और वर्ष निकालें :: वर्ष वस्तु एक UIView के लिए कलंक कैसे लागू करें? क्या ऑटोमैपर लिंक का समर्थन करता है? जेएसपी पेज के माध्यम से सर्वलेट को कैसे कॉल करें किस क्षेत्र में एफ # का उपयोग सी # से अधिक उपयुक्त हो सकता है? प्रत्येक बिल्ड पर एक T4 टेम्पलेट चलाने के लिए विजुअल स्टूडियो प्राप्त करें डीआईवी के आयाम को कैसे पता लगाया जाए? मापदंडों के साथ एक विधि नाम से एक चयनकर्ता बनाना जावास्क्रिप्ट का उपयोग करके 'div' दिखाएँ / छिपाएं कोणीय: कॉलिंग कंट्रोलर फंक्शन का उपयोग करके निर्देशक लिंक फ़ंक्शन के अंदर & सीएसएस मीडिया प्रश्नों और जावास्क्रिप्ट विंडो चौड़ाई से मेल नहीं खाती स्ट्रिंग के लिए पायथन प्रारूप समयबद्धता सशर्त-और और सशर्त-या ऑपरेटरों के जावा आवधिक असाइन संस्करण क्यों नहीं हैं? (&& =, || =) पायथन का इस्तेमाल करना स्पर्श करना है? रूबी – संदर्भ या मूल्य से पैरामीटर?

dc.js – एकाधिक कॉलम से पंक्ति चार्ट कैसे बनाएं

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

अद्यतन: यहां एक त्वरित स्केच है मानक के लिए क्षमा चाहते हैं
पंक्ति चार्ट;
स्तंभ 1 —————– 64 (स्तंभ 1 का कुल)
स्तंभ 2 ——- 35 (कुल 2 स्तंभ)
स्तंभ 3 ———— 45 (स्तंभ 3 का कुल)

वेब के समाधान से एकत्रित समाधान "dc.js – एकाधिक कॉलम से पंक्ति चार्ट कैसे बनाएं"

दिलचस्प समस्या! यह एक धुरी के समान कुछ ऐसा लगता है, जो यहाँ क्रॉसफिल्टर के लिए अनुरोध किया गया था । एक समाधान "नकली समूहों" और "नकली आयाम" का उपयोग कर मन में आता है, हालांकि कुछ चेतावनियां हैं:

  • यह अन्य आयामों पर फ़िल्टर को प्रतिबिंबित करेगा
  • लेकिन, आप चार्ट में किसी अन्य चीज़ को फ़िल्टर करने के लिए पंक्तियों पर क्लिक नहीं कर पाएंगे (क्योंकि यह किस रिकॉर्ड का चयन होगा?)

नकली समूह के निर्माता इस तरह दिखते हैं:

function regroup(dim, cols) { var _groupAll = dim.groupAll().reduce( function(p, v) { // add cols.forEach(function(c) { p[c] += v[c]; }); return p; }, function(p, v) { // remove cols.forEach(function(c) { p[c] -= v[c]; }); return p; }, function() { // init var p = {}; cols.forEach(function(c) { p[c] = 0; }); return p; }); return { all: function() { // or _.pairs, anything to turn the object into an array return d3.map(_groupAll.value()).entries(); } }; } 

यह क्या कर रहा है, सभी अनुरोधित पंक्तियों को किसी ऑब्जेक्ट को कम कर रहा है, और फिर ऑब्जेक्ट को सरणी स्वरूप में group.all dc.js को उम्मीद है कि group.all वापस लौट जाएगा।

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

उदाहरण के लिए

 var dim = ndx.dimension(function(r) { return ra; }); var sidewaysGroup = regroup(dim, ['a', 'b', 'c', 'd']); 

यहां पूर्ण उदाहरण: http://jsfiddle.net/gordonwoodhull/37uET/6/

(ध्यान दें कि चार्ट में परिणामों की बुरी स्थिति में क्लिक करने के कारण, यह कैसा फिल्टर है?)

क्या आप स्टैक्ड पंक्ति चार्ट की तलाश कर रहे हैं? उदाहरण के लिए, इस चार्ट में प्रत्येक पंक्ति एक श्रेणी का प्रतिनिधित्व करती है और प्रत्येक रंग उप-श्रेणी को दर्शाता है:

यहां छवि विवरण दर्ज करें

दुर्भाग्य से, यह सुविधा अभी तक DC.js. पर समर्थित नहीं है। यह सुविधा अनुरोध https://github.com/dc-js/dc.js/issues/397 पर है । यदि आप कुछ गैर-पुस्तकालय कोड में उतारा करते हैं, तो आप उस समस्या लॉग में संदर्भित उदाहरणों को देख सकते हैं।

वैकल्पिक रूप से, आप एक स्टैकेबल बार चार्ट का उपयोग कर सकते हैं इस लिंक के बारे में एक अच्छा वर्णन है कि यह कैसे काम करता है: http://www.solinea.com/blog/coloring-dcjs-stacked-bar-charts यहां छवि विवरण दर्ज करें