Aller au contenu

Module:Fabricant de camemberts

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 12 août 2015 à 19:50 et modifiée en dernier par Zolo (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

 Documentation[voir] [modifier] [historique] [purger]

Module pour construire un diagramme camembert à partir d'un autre module. Il utilise Module:Diagramme

Méthodes

obj:new()

création d'un nouvel objet camembert

obj:addSlice(table)

ajoute un tranche {valeur, nom, couleur, lien)}

obj:addTitle(str)

nom du diagramme

obj:format(table)

pour un camembert personnalisé. Utilise les clés suivantes :

  • radius (diamètre)
  • percent (percent = true) pour que la légende affiche une valeur absolue plutôt qu'un pourcentage.

obj:show()

achève et montre le camembert

Exemples

Utilisé par Module:Résultats d'élections

local pieChart = {}
local chart = require 'Module:Diagramme'
local delimiter = '::' -- more robust than the standard ':' of module:Chart

function pieChart:new()
	local obj = {}
	obj.slices = {}
	setmetatable(obj, pieChart)
	self.__index = self
	return obj
end
function pieChart:addSlice(new)
	new = table.concat(new, delimiter)
	table.insert(self.slices, '(' .. new .. ')')
end
function pieChart:addTitle(title)
	self.title = title
end

function pieChart:addTitle(title)
	self.title = title
end

function pieChart:addSource(src)
	self.source = src
end

function pieChart:format(params)
	self.displayformat = params
end
function pieChart:show()
	local frame = mw.getCurrentFrame()
	frame.args = self.displayformat or {}
	frame.args.slices = table.concat(self.slices, '::')
	frame.args.delimiter = '::'
	local image = chart['pie chart'](frame)
	return '<table><tr><th>' .. (self.title or '') .. '</th></tr><tr><td>' .. image .. '<small>' .. (self.source or '').. '</small></td></tr></table>'
end
return pieChart