समाधान tooltipOpts उपयोग कर रहा है ->सामग्री कॉलबैक फ़ंक्शन के साथ विधि ठीक से लेबल को डायनामिक डेटा वापस जाने के लिए।
मैं पता लगा है कि "tooltipOpts" की कॉलबैक फ़ंक्शन पर एक 4 तर्क गुजर वास्तव में यदि आप संपूर्ण डेटा वस्तु है जहाँ से चार्ट/ग्राफ़ से निर्माण किया है देता है। यहां से, आप इस अक्ष के दूसरे तर्क को निकालने के लिए लेबल की अनुक्रमणिका के रूप में एक्स अक्ष लेबल आसानी से निकाल सकते हैं।
उदाहरण:
डाटा वस्तु मैं साजिश कार्य करने के लिए गुजर रही है:
[
{ data: [[1,137],[2,194],[3,376],[4,145],[5,145],[6,145],[7,146]] }
],
{
bars: { show: true, fill: true, barWidth: 0.3, lineWidth: 1, fillColor: { colors: [{ opacity: 0.8 }, { opacity: 1}] }, align: 'center' },
colors: ['#fcc100'],
series: { shadowSize: 3 },
xaxis: {
show: true,
font: { color: '#ccc' },
position: 'bottom',
ticks: [[1,'Thursday'],[2,'Friday'],[3,'Saturday'],[4,'Sunday'],[5,'Monday'],[6,'Tuesday'],[7,'Wednesday']]
},
yaxis:{ show: true, font: { color: '#ccc' }},
grid: { hoverable: true, clickable: true, borderWidth: 0, color: 'rgba(120,120,120,0.5)' },
tooltip: true,
tooltipOpts: {
content: function(data, x, y, dataObject) {
var XdataIndex = dataObject.dataIndex;
var XdataLabel = dataObject.series.xaxis.ticks[XdataIndex].label;
return y + ' stories created about your page on ' + XdataLabel
},
defaultTheme: false,
shifts: { x: 0, y: -40 }
}
}
बार चार्ट उपरोक्त डेटा वस्तु से गाया:
जैसा कि आप छवि पूर्वावलोकन, तर्क पर देख सकते हैं लेबल की सामग्री को रेंडर करने गतिशील वास्तविक डेटा के रूप में प्रयोग किया जाता है यह है:
tooltipOpts: {
content: function(data, x, y, dataObject) {
var XdataIndex = dataObject.dataIndex;
var XdataLabel = dataObject.series.xaxis.ticks[XdataIndex].label;
return y + ' stories created about your page on ' + XdataLabel;
},
defaultTheme: false,
shifts: { x: 0, y: -40 }
}
showTooltip() यहाँ कार्यान्वित किया जाता है (स्रोत देखें): http://www.flotcharts.org/flot/examples/interacting/index.html – razzed
@ पीटर क्या होगा यदि मैं अपने मूल्य के बजाय प्रत्येक स्टैक द्वारा कवर प्रतिशत क्षेत्र दिखाना चाहता हूं। – sunil
एक अधिक सामान्य समाधान (जो दो से अधिक श्रृंखला के लिए काम करता है) बाद के सभी डेटा बिंदुओं से, यानी 'y = घटाना है item.datapoint [1]; के लिए (var i = 2; i