Skip to content
Extraits de code Groupes Projets
Pie.php 1,74 ko
Newer Older
  • Learn to ignore specific revisions
  • <?php
    /**
     * Piwik - Open source web analytics
     *
     * @link http://piwik.org
     * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
     *
    
     * @category Piwik_Plugins
     * @package CoreVisualizations
    
    namespace Piwik\Plugins\CoreVisualizations\Visualizations\JqplotGraph;
    
    use Piwik\Plugins\CoreVisualizations\JqplotDataGenerator;
    
    use Piwik\Plugins\CoreVisualizations\Visualizations\JqplotGraph;
    
    use Piwik\Visualization\Config;
    use Piwik\Visualization\Request;
    
     * Visualization that renders HTML for a Pie graph using jqPlot.
    
     */
    class Pie extends JqplotGraph
    {
        const ID = 'graphPie';
    
    
        public function configureVisualization(Config $properties)
        {
            parent::configureVisualization($properties);
    
            $properties->visualization_properties->show_all_ticks = true;
            $properties->datatable_js_type = 'JqplotPieGraphDataTable';
        }
    
        public function afterAllFilteresAreApplied($dataTable, Config $properties, Request $request)
        {
            parent::afterAllFilteresAreApplied($dataTable, $properties, $request);
    
            $metricColumn = reset($properties->columns_to_display);
    
            if ($metricColumn == 'label') {
                $metricColumn = next($properties->columns_to_display);
            }
    
            $properties->columns_to_display = array($metricColumn ? : 'nb_visits');
        }
    
    
        public static function getDefaultPropertyValues()
    
            $result = parent::getDefaultPropertyValues();
    
            $result['visualization_properties']['graph']['max_graph_elements'] = 6;
            $result['visualization_properties']['graph']['allow_multi_select_series_picker'] = false;
    
            return $result;
        }
    
        protected function makeDataGenerator($properties)
        {
            return JqplotDataGenerator::factory('pie', $properties);
        }
    }