2011-06-01 17 views
12

में लिंक जोड़ने के लिए कैसे मैं Google चार्ट api में लिंक जोड़ सकता हूं?google chart api

उदाहरण के लिए,

enter image description here

मैं कैसे "काम" या "खाओ" के लिए लिंक जोड़ सकते हैं?

धन्यवाद!

+0

मुझे विश्वास नहीं है कि आप वहां HTML कोड डाल सकते हैं। –

+0

हाँ, मैंने कोशिश की लेकिन नहीं कर सकता। कोई सुझाव? –

+0

ऐसा नहीं लगता कि यह करने योग्य है क्योंकि कोई टैग प्रकार तत्व नहीं है, केवल विज़ुअलाइज़ेशन API के लिए स्ट्रिंग है। यह स्वचालित रूप से टैग को नियमित पाठ में परिवर्तित करता है। एसवीजी में एंकर टैग का उपयोग करना संभव है: http://www.w3.org/TR/SVG/images/linking/link01.svg, लेकिन मुझे नहीं लगता कि Google API अब इसके लिए अनुमति देता है। आप समर्थन मंच पर प्रश्न पूछ सकते हैं: http://groups.google.com/group/google-visualization-api - वे आमतौर पर इसका उत्तर देने में अच्छे होते हैं। –

उत्तर

12

http://code.google.com/apis/chart/interactive/docs/events.html

<script type="text/javascript"> 
google.load('visualization', '1', {'packages':['corechart']}); 
google.setOnLoadCallback(drawChart); 
function drawChart() 
{ 
    var data = new google.visualization.DataTable(); 
    data.addColumn('string', 'Name'); 
    data.addColumn('number', 'Count'); 

    data.addRows([ ['Value A',5 ],['Value B',61 ],['Value C',53 ],['Value D',22 ] ]); 
    var chart = new google.visualization.PieChart(document.getElementById('chart_div')); 
    chart.draw(data, {width: 400, height: 280, is3D: true, title: ''}); 

    google.visualization.events.addListener(chart, 'select', selectHandler); 

    function selectHandler(e)  { 
     alert(data.getValue(chart.getSelection()[0].row, 0)); 
    } 

} 

</script> 
25

लकी फ्रैंक जवाब अच्छा है, लेकिन यह सिर्फ एक चेतावनी बॉक्स प्रिंट करता है। यहां एक और पूरा जवाब है। मैंने DataTable में लिंक डाले हैं, फिर मैं DataView बना देता हूं ताकि वे चार्ट में पास न हों।

<html> 
    <head> 
    <script type="text/javascript" src="https://www.google.com/jsapi"></script> 
    <script type="text/javascript"> 
     google.load("visualization", "1", {packages:["corechart"]}); 
     google.setOnLoadCallback(drawChart); 
     function drawChart() { 
     var data = google.visualization.arrayToDataTable([ 
      ['Task', 'link', 'Hours per Day'], 
      ['Work', 'http://www.thefreedictionary.com/work', 11], 
      ['Eat', 'http://www.thefreedictionary.com/eat', 2], 
      ['Commute', 'http://www.thefreedictionary.com/commute', 2], 
      ['Watch TV', 'http://www.thefreedictionary.com/television',2], 
      ['Sleep', 'http://www.thefreedictionary.com/sleep', 7] 
     ]); 

     var view = new google.visualization.DataView(data); 
     view.setColumns([0, 2]); 

     var options = { 
      title: 'My Daily Activities' 
     }; 

     var chart = new google.visualization.PieChart( 
      document.getElementById('chart_div')); 
     chart.draw(view, options); 

     var selectHandler = function(e) { 
     window.location = data.getValue(chart.getSelection()[0]['row'], 1); 
     } 

     // Add our selection handler. 
     google.visualization.events.addListener(chart, 'select', selectHandler); 
     } 
    </script> 
    </head> 
    <body> 
    <div id="chart_div" style="width: 900px; height: 900px;"></div> 
    </body> 
</html> 

बीटीडब्ल्यू, Google चार्ट एपीआई वास्तव में चट्टानों! धन्यवाद जो भी इसे लिखा है।

+0

वाह मार्क बटलर मैं इसके लिए हमेशा के लिए खोज रहा हूं! पुराने धागे का जवाब देने के लिए खेद है, लेकिन क्या आप जानते हैं कि यह MySQL का उपयोग करके काम करने में सक्षम कैसे होगा? मैं वर्तमान में अपने मौजूदा Google चार्ट के साथ MySQL का उपयोग कर रहा हूं, लेकिन मैं दो पृष्ठों का उपयोग करता हूं, एक चार्ट के लिए, और दूसरा जेसन के लिए। धन्यवाद! – Spartacus38

+0

https://developers.google.com/chart/interactive/docs/php_example के बारे में कैसे? –

+0

हाँ यह मूल रूप से ठीक है कि मेरा कोड कैसा दिखता है, लेकिन यह स्पष्ट नहीं करता है कि SQL से स्ट्रिंग कैसे प्राप्त करें और इसे एक लिंक में बदल दें। मेरा चार्ट पूरी तरह से बढ़िया काम करता है, लेकिन अब मुझे और गहराई चाहिए जहां वे बिंदु पर क्लिक करें और मेट्रिक्स के विवरण देखें। – Spartacus38

-3

मैं बस इको कमांड का उपयोग करता हूं। आप एक अल्पविराम के बीच एक php echo कथन के साथ पाठ को प्रतिस्थापित कर सकते हैं। उदाहरण के लिए आप 11 को एसक्यूएल डेटा के लिंक के साथ बदल सकते हैं:

['Work', 'http://www.thefreedictionary.com/work', < ? php echo $row_rs_age_total['Old']], $row_rs_age_total['Old']; ?>],