diff --git a/views/highcharts_views.options.inc b/views/highcharts_views.options.inc
index c67cdb4..523e469 100644
--- a/views/highcharts_views.options.inc
+++ b/views/highcharts_views.options.inc
@@ -145,7 +145,7 @@ abstract class ViewsHighchartsOptions extends HighchartsOptions {
           foreach($field_info['bundles'] as $entity_type => $bundles) {
             foreach ($bundles as $bundle) {
               $instance = field_info_instance($entity_type, $field_info['field_name'], $bundle);
-              $values[$field_id][$entity_type][$bundle] = field_analytics_get_allowed_values($instance);
+              $values[$field_id][$entity_type][$bundle] = $this->field_get_allowed_values($instance);
             }
           }
         }
@@ -154,6 +154,42 @@ abstract class ViewsHighchartsOptions extends HighchartsOptions {
     return $values;
   }
 
+
+  /**
+   * Gets allowed values for all supported fields.
+   *
+   * @param array $instance
+   *   A field instance.
+   *
+   * @return array|false
+   *   An array of field allowed values, or FALSE.
+   */
+  function field_get_allowed_values($instance) {
+    // Check allowed values.
+    $field = field_info_field($instance['field_name']);
+
+    // Support all core fields with allowed values.
+    switch ($field['type']) {
+      case 'list_integer':
+      case 'list_float':
+      case 'list_text':
+      case 'list_boolean':
+        $callback = 'list_allowed_values';
+        break;
+      case 'taxonomy_term_reference':
+        $callback = 'taxonomy_allowed_values';
+        break;
+    }
+
+    $allowed_values = FALSE;
+    if (isset($callback) && function_exists($callback)) {
+      $allowed_values = $callback($field, $instance, $instance['entity_type']);
+    }
+
+    return $allowed_values;
+  }
+
+
   /**
    * Gets a result count across all rows for all Views fields allowed values.
    *
