javascript - डी 3-cal-heatmap कैलेंडर heatmap के लिए आवश्यक डेटा प्रारूप?




json d3.js calendar (5)

आप सीधे JSON फ़ाइल को पुनः प्राप्त कर सकते हैं और http://kamisama.github.io/cal-heatmap/datas-years.json पर इसका निरीक्षण कर सकते हैं।

मैं इस लिंक से calendar-heatmap को साजिश करने की कोशिश कर रहा हूं।

मैं सभी ड्यूकेनेशन के लिए खोज की थी लेकिन data-format लिए मुझे कोई नमूना फ़ाइल नहीं मिली।

यहां दस्तावेज़ीकरण के लिए एक लिंक है लेकिन उसके लिए कोई नमूना फाइल नहीं है

प्रलेखन में मुझे यह आंकड़ा आयात किया जा रहा datas-years.json लेकिन मेरे पास कोई सुराग नहीं है कि प्रारूप कैसे है कोई इस पर मेरी मदद करो।


यहां बेतरतीब ढंग से जेएसएन फाइल उत्पन्न करने के लिए एक यादृच्छिक परीक्षण कार्यक्रम है I

परिदृश्य: वर्तमान महीने सहित 12 महीनें जमा करें। यदि आपने शुरुआत को परिभाषित किया है -> इसे वर्तमान माह से 11 महीनों के पहले महीने में इंगित करें और जेसन फाइल पूरी तरह से काम करना चाहिए।

var data = generateRandomData();

            function getRandomInt(min, max) {
                return Math.floor(Math.random() * (max - min + 1)) + min;
            }


            function generateRandomData(){
                var date = new Date();

                var mind = date.valueOf();
                var maxd = date.setMonth(date.getMonth() - 11);

                var mins = 0;
                var maxs = 40;

                var retobj = {};

                for(var i=0;i<100;i++){
                    retobj[getRandomInt(mind,maxd)/1000] = getRandomInt(mins,maxs);
                }

                return retobj;
            }

कैल-हीटमैप को निम्न प्रारूप में एक JSON ऑब्जेक्ट में डेटा की उम्मीद है:

{
    "timestamp1": value1,
    "timestamp2": value2,
    "timestamp3": value3,
    ...
}

मान किसी भी संख्या (पूर्णांक या फ्लोट) हो सकता है

सभी टाइमस्टैम्प सेकंड में हैं सेकंड्स 'यूटीसी सेकेंड' (कभी-कभी 'युकाक सेकंड' या 'यूनिक्स सेकेंड' कहा जाता है) जीएमटी दिनांक / समय के लिए 01-01-19 70 00:00:00 से सेकंड की संख्या के रूप में प्रदान किए गए हैं। यहां UTC दूसरा कैलकुलेटर है

आज हम 1.388.000.000 यूटीसी सेकंड के आसपास हैं। साइट पर नमूना वर्ष 2000 से डेटा दिखाता है, यही कारण है कि यूटीसी सेकंड्स के आसपास 946.000.000 हैं जैसा कि आप JSON फ़ाइल नमूने में देखा था।

अच्छी बात यह है कि आप इंटरनेट पर आसानी से मिल सकते हैं कि यूटीसी सेकंड को अन्य समय के प्रारूपों से कैसे प्राप्त किया जाए, और आप उस डेटा फ़ाइल को बनाने में सक्षम होंगे जो कि कैल-हीटमैप को उम्मीद है। :)


Cal-heatmap को JSON प्रारूप में डेटा की उम्मीद है

{
    "timestamp1": value1,
    "timestamp2": value2,
    "timestamp3": value3,
    ...
}

जैसा कि पहले ही कहा गया है, टाइमस्टैंप हमेशा सेकंड में होना चाहिए, और मिलीसेकंड में नहीं (जावास्क्रिप्ट डिफ़ॉल्ट)

आप या तो अपने डेटा को एक फ़ाइल में डालते हैं, तो उस फ़ाइल को data विकल्प में पास करें, या सीधे एक जावास्क्रिप्ट चर पास करें:

var d = {946705035: 25};
var cal = new CalHeatMap();
cal.init({data: d}); // For variable
cal.init({data: "path/to/file.json"}) // For file, or URI

सीएएल-हीटमैप सीएसवी और टीएसवी में फाइल को भी समझ सकता है।

मामले में कैल-हीटमैप आपके डेटा को समझ नहीं सकता / नहीं:

यदि डेटा एक चर से है

अपने डेटा को जावा-स्क्रिप्ट में JS- ऑब्जेक्ट में कनवर्ट करने से पहले उसे कैल-हीटमैप पास करें

अगर डेटा फ़ाइल / यूरी से है

सही datatype सेट करें, फिर फ़ाइल को पढ़ने के लिए और json ऑब्जेक्ट में टेक्स्ट को परिवर्तित करने के बाद बाद में afterLoadData() कॉलबैक का उपयोग करें।

datatype फ़ाइल को पढ़ने के लिए उपयोग किए जाने वाले पार्सर इंजन को निर्दिष्ट करते हैं। यदि आपकी फ़ाइल JSON, csv, या tsv प्रारूपित है, इसे json सेट करें, आदि ... और, इसे टेक्सट के रूप में फ़ाइल को सादे टेक्स्ट के रूप में पढ़ने के लिए सेट करें

आप Google Analytics उदाहरण का अध्ययन कर सकते हैं, यह data , datatype और बाद में afterLoadData() कॉलबैक के उपयोग के बारे में afterLoadData()


पार्टी के लिए थोड़ा देर हो चुकी है, लेकिन मुझे यह पोस्ट नहीं दिखाई देता है, इसलिए यहां जाता है, आप अपने जेसन को एक फाइल में भी डाल सकते हैं और इसे मानक इनपुट के माध्यम से - फ़ाइल अपलोड विकल्प का उपयोग करके कर्ल में पास कर सकते हैं, जैसे:

 echo 'my.awesome.json.function({"do" : "whatever"})' | curl -X POST "http://url" -T -






javascript json d3.js calendar heatmap