Do you want to display Google charts in WordPress? Our snippet will create a new shortcode that takes advantage of the Google charts API. This shortcode will let you display a range of charts, such as lines, xyline, sparkline, meter, scatter, venn, pie and pie2d.
Instructions:
All you have to do is add this code to your theme’s functions.php file or in a site-specific plugin:
function google_chart_shortcode( $atts ) {
extract(shortcode_atts(array(
'data' => '',
'size' => '400x180',
'colors' => '',
'title' => '',
'labels' => '',
'type' => 'pie',
'advanced' => ''
), $atts));
switch ($type) {
case 'line' :
$charttype = 'lc'; break;
case 'xyline' :
$charttype = 'lxy'; break;
case 'sparkline' :
$charttype = 'ls'; break;
case 'meter' :
$charttype = 'gom'; break;
case 'scatter' :
$charttype = 's'; break;
case 'venn' :
$charttype = 'v'; break;
case 'pie' :
$charttype = 'p3'; break;
case 'pie2d' :
$charttype = 'p'; break;
default :
$charttype = $type;
break;
}
if ($title) $string .= '&chtt='.$title.'';
if ($labels) $string .= '&chl='.$labels.'';
if ($colors) $string .= '&chco='.$colors.'';
$string .= '&chs='.$size.'';
$string .= '&chd=t:'.$data.'';
return '<img title="'.$title.'" src="http://chart.apis.google.com/chart?cht='.$charttype.''.$string.$advanced.'" alt="'.$title.'" />';
}
add_shortcode('chart', 'google_chart_shortcode');
See the below shortcode example of a 3D pie chart. Change the type attribute in your shortcode to specify the type of graph you wish to display.
[chart data="41,37.89,10.67,2.03" labels="Reffering+sites|Search+Engines|Direct+traffic|Other" colors="ff0000,005599,fff000,000000" size="488x200" title="Traffic Sources" type="pie"]
Note: If this is your first time adding code snippets in WordPress, then please refer to our guide on how to properly copy / paste code snippets in WordPress, so you don’t accidentally break your site.
If you liked this code snippet, please consider checking out our other articles on the site like: Best WordPress Page Builders (Compared).
Hello, thanks for this. How can I use stacked bar type? or gauge type? Also, how can I customize this further with for example opacity and so on…. Hope I get a reply from you thanks.
Hello ! How to add alt tag to this image? I specify that my knowledge in html is very low 🙂
Great codes. Thank you and it worked.
Also, how do I add tables from Google Charts? Also, does it impact my SEO if I use the tables? Thanks.