दिलचस्प पोस्ट
वाईएक्स ट्रिक्स और टिप्स सबडोमेन और डोमेन के बीच कुकी साझा करें क्या हर घोषणा के लिए @FXML आवश्यक है? विमित में एम चरित्र का क्या अर्थ है? विंडोज से पूरी तरह से नोड को हटाने के लिए कैसे जावास्क्रिप्ट में एक ऑब्जेक्ट की पहली संपत्ति कैसे पहुंचेगी? एक डेटाबेस के साथ एक आवेदन जहाज आर में फ़ंक्शन निष्पादन समय मापना सी ++ संदर्भ से मुक्त या संदर्भ-संवेदनशील है? पायथन लैम्ब्डा समापन स्कोपिंग नेस्टेड एरे डेटा सेट करने के लिए स्ट्रिंग पथ का उपयोग करना एनपीएम स्क्रिप्ट के लिए कमांड लाइन तर्क भेजना के लिए जावास्क्रिप्ट … में बनाम के लिए सी + + फ़्लोटिंग प्वाइंट सटीक सप्ताह संख्या से तारीख की गणना करें

उच्चचर्ट श्रृंखला के लिए अतिरिक्त डेटा सेट करें

क्या श्रृंखला ऑब्जेक्ट में कुछ अतिरिक्त डेटा पास करने का कोई तरीका है जो 'टूलटिप' चार्ट में दिखाएगा?

उदाहरण के लिए

tooltip: { formatter: function() { return '<b>'+ this.series.name +'</b><br/>'+ Highcharts.dateFormat('%b %e', this.x) +': '+ this.y; } 

यहां हम श्रृंखला में केवल नाम, this.x और this.y का उपयोग कर सकते हैं। कहने के लिए मुझे डेटा सेट के साथ एक और गतिशील मूल्य अकेले पास करना होगा और श्रृंखला ऑब्जेक्ट के माध्यम से पहुंच प्राप्त कर सकते हैं। क्या यह संभव है?

एडवांस में आप सभी को धन्यवाद।

वेब के समाधान से एकत्रित समाधान "उच्चचर्ट श्रृंखला के लिए अतिरिक्त डेटा सेट करें"

हां, यदि आप निम्नलिखित की तरह श्रृंखला ऑब्जेक्ट की स्थापना करते हैं, जहां प्रत्येक डेटा बिंदु हैश है, तो आप अतिरिक्त मूल्यों को पारित कर सकते हैं:

 new Highcharts.Chart( { ..., series: [ { name: 'Foo', data: [ { y : 3, myData : 'firstPoint' }, { y : 7, myData : 'secondPoint' }, { y : 1, myData : 'thirdPoint' } ] } ] } ); 

अपने टूलटिप में आप उस ऑब्जेक्ट की "पॉइंट" विशेषता के माध्यम से इसे एक्सेस कर सकते हैं:

 tooltip: { formatter: function() { return 'Extra data: <b>' + this.point.myData + '</b>'; } } 

यहां पूर्ण उदाहरण: http://jsfiddle.net/japanick/dWDE6/314/

इसके अतिरिक्त, इस समाधान के साथ, आप जितना चाहें उतना अधिक डेटा भी डाल सकते हैं :

 tooltip: { formatter: function () { return 'Extra data: <b>' + this.point.myData + '</b><br> Another Data: <b>' + this.point.myOtherData + '</b>'; } }, series: [{ name: 'Foo', data: [{ y: 3, myData: 'firstPoint', myOtherData: 'Other first data' }, { y: 7, myData: 'secondPoint', myOtherData: 'Other second data' }, { y: 1, myData: 'thirdPoint', myOtherData: 'Other third data' }] }] 

धन्यवाद निक

मैं एसक्यूएल सर्वर से अपना डेटा प्राप्त करने के लिए AJAX का उपयोग कर रहा हूं, फिर मैं जेएस सरणी तैयार कर रहा हूं जिसका उपयोग मेरे चार्ट के डेटा के रूप में किया जाता है। AJAX सफलतापूर्वक एक बार जावास्क्रिप्ट कोड है:

 ..., success: function (data) { var fseries = []; var series = []; for (var arr in data) { for (var i in data[arr]['data'] ){ var d = data[arr]['data'][i]; //if (i < 5) alert("d.method = " + d.method); var serie = {x:Date.parse(d.Value), y:d.Item, method:d.method }; series.push(serie); } fseries.push({name: data[arr]['name'], data: series, location: data[arr]['location']}); series = []; }; DrawChart(fseries); }, 

टूलटिप में अतिरिक्त मेटा-डेटा दिखाने के लिए अब:

 ... tooltip: { xDateFormat: '%m/%d/%y', headerFormat: '<b>{series.name}</b><br>', pointFormat: 'Method: {point.method}<br>Date: {point.x:%m/%d/%y } <br>Reading: {point.y:,.2f}', shared: false, }, 

मैं अपने परिणाम सेट के माध्यम से पुनरावृति करने के लिए एक डेटारॉ का उपयोग करता हूं, फिर मैं जेसन प्रारूप में वापस जाने से पहले मूल्य निर्दिष्ट करने के लिए एक क्लास का उपयोग करता हूं। यहाँ नियंत्रक एजेक्स द्वारा बुलाया कार्रवाई में सी # कोड है

 public JsonResult ChartData(string dataSource, string locationType, string[] locations, string[] methods, string fromDate, string toDate, string[] lstParams) { List<Dictionary<string, object>> dataResult = new List<Dictionary<string, object>>(); Dictionary<string, object> aSeries = new Dictionary<string, object>(); string currParam = string.Empty; lstParams = (lstParams == null) ? new string[1] : lstParams; foreach (DataRow dr in GetChartData(dataSource, locationType, locations, methods, fromDate, toDate, lstParams).Rows) { if (currParam != dr[1].ToString()) { if (!String.IsNullOrEmpty(currParam)) //A new Standard Parameter is read and add to dataResult. Skips first record. { Dictionary<string, object> bSeries = new Dictionary<string, object>(aSeries); //Required else when clearing out aSeries, dataResult values are also cleared dataResult.Add(bSeries); aSeries.Clear(); } currParam = dr[1].ToString(); aSeries["name"] = cParam; aSeries["data"] = new List<ChartDataModel>(); aSeries["location"] = dr[0].ToString(); } ChartDataModel lst = new ChartDataModel(); lst.Value = Convert.ToDateTime(dr[3]).ToShortDateString(); lst.Item = Convert.ToDouble(dr[2]); lst.method = dr[4].ToString(); ((List<ChartDataModel>)aSeries["data"]).Add(lst); } dataResult.Add(aSeries); var result = Json(dataResult.ToList(), JsonRequestBehavior.AllowGet); //used to debug final dataResult before returning to AJAX call. return result; } 

मुझे पता है कि सी # में कोड का एक और अधिक कुशल और स्वीकार्य तरीका है, लेकिन मैं परियोजना को विरासत में मिला है

बस कुछ गतिशीलता जोड़ने के लिए:

10 श्रेणियों के साथ एक स्टैक्ड कॉलम चार्ट के लिए डेटा जेनरेट करने के लिए क्या किया?
मैं प्रत्येक श्रेणी 4 डेटा श्रृंखला के लिए रखना चाहता था और प्रत्येक डेटा श्रृंखला के लिए अतिरिक्त जानकारी (छवि, प्रश्न, विचलित करने वाला और अपेक्षित उत्तर) दिखाना चाहता था:

 <?php while($n<=10) { $data1[]=array( "y"=>$nber1, "img"=>$image1, "ques"=>$ques, "distractor"=>$distractor1, "answer"=>$ans ); $data2[]=array( "y"=>$nber2, "img"=>$image2, "ques"=>$ques, "distractor"=>$distractor2, "answer"=>$ans ); $data3[]=array( "y"=>$nber3, "img"=>$image3, "ques"=>$ques, "distractor"=>$distractor3, "answer"=>$ans ); $data4[]=array( "y"=>$nber4, "img"=>$image4, "ques"=>$ques, "distractor"=>$distractor4, "answer"=>$ans ); } // Then convert the data into data series: $mydata[]=array( "name"=>"Distractor #1", "data"=>$data1, "stack"=>"Distractor #1" ); $mydata[]=array( "name"=>"Distractor #2", "data"=>$data2, "stack"=>"Distractor #2" ); $mydata[]=array( "name"=>"Distractor #3", "data"=>$data3, "stack"=>"Distractor #3" ); $mydata[]=array( "name"=>"Distractor #4", "data"=>$data4, "stack"=>"Distractor #4" ); ?> 

उच्चचर्चे सेक्शन में:

 var mydata=<? echo json_encode($mydata)?>; // Tooltip section tooltip: { useHTML: true, formatter: function() { return 'Question ID: <b>'+ this.x +'</b><br/>'+ 'Question: <b>'+ this.point.ques +'</b><br/>'+ this.series.name+'<br> Total attempts: '+ this.y +'<br/>'+ "<img src=\"images/"+ this.point.img +"\" width=\"100px\" height=\"50px\"/><br>"+ 'Distractor: <b>'+ this.point.distractor +'</b><br/>'+ 'Expected answer: <b>'+ this.point.answer +'</b><br/>'; } }, // Series section of the highcharts series: mydata // For the category section, just prepare an array of elements and assign to the category variable as the way I did it on series. 

आशा है कि यह किसी को मदद करता है