diff --git a/includes/plugins/google_visualization_api.inc b/includes/plugins/google_visualization_api.inc
index ced3544..30b2ef3 100644
--- a/includes/plugins/google_visualization_api.inc
+++ b/includes/plugins/google_visualization_api.inc
@@ -14,11 +14,19 @@ class GoogleVisualizationAPIHandler implements VisualizationHandlerInterface {
    */
   public function render($chart_id, $data, $options) {
     // Chart options.
-    $chart_options = array(
-      'title' => $options['title'],
-      'width' => !empty($options['width']) ? $options['width'] : '100%',
-      'height' => !empty($options['height']) ? $options['height'] : '100%',
-    );
+    if (isset($options['chart_options'])) {
+      $chart_options = $options['chart_options'];
+      $chart_options['title'] = (!empty($chart_options['title'])) ? $chart_options['title'] : $options['title'];
+      $chart_options['width'] = (!empty($chart_options['width'])) ? $chart_options['width'] : ((!empty($options['width'])) ? $options['width'] : '100%');
+      $chart_options['height'] = (!empty($chart_options['height'])) ? $chart_options['height'] : ((!empty($options['height'])) ? $options['height'] : '100%');
+    }
+    else {
+      $chart_options = array(
+        'title' => $options['title'],
+        'width' => !empty($options['width']) ? $options['width'] : '100%',
+        'height' => !empty($options['height']) ? $options['height'] : '100%',
+      );
+    }
 
     switch ($options['type']) {
       case 'map':
