{{파이|#000|1크기 = 10}}
{{파이|너비 = 10em|#000|1크기 = 10|skyblue|2크기 = 30|gray|3크기 = 40}}
{{파이|#000|1크기 = 33|#ddd|2크기 = 33|red|3크기 = 10}}
{{파이
|너비 = 7em
|높이 = 10em
|#000|1크기 = 10
|skyblue|2크기 = 30
|gray|3크기 = 40
|yellow|4크기 = 20
}}
연습장이나 사용자 문서에서 틀의 사용이나 수정을 연습할 수 있습니다.
분류는
/설명문서에 넣어주세요.
local getArgs = require('Module:Arguments').getArgs
local pie = {}
function pie.perToDeg(percent)
return percent * 3.6
end
function pie.main(frame)
local args = getArgs(frame)
local return_ = ""
local sumdeg = 0
local percent = {}
local width, height
if nil == args['높이'] and nil == args['너비'] then
width, height = '300px', '300px'
elseif nil == args['너비'] then
width, height = '300px', args['높이']
elseif nil == args['높이'] then
width, height = args['너비'], args['너비']
else
width, height = args['너비'], args['높이']
end
local j = 1
while nil ~= args[j..'크기'] do
percent[j] = args[j..'크기']
j = j + 1
end
local i = 1
while i < j do
appdeg = sumdeg + pie.perToDeg(percent[i])
result = args[i].." "..sumdeg.."deg "..appdeg.."deg,"
sumdeg = pie.perToDeg(percent[i]) + sumdeg
return_ = return_..result
i = i + 1
end
if sumdeg < 360 then
return_ = return_..[[#e9e9e9 ]]..sumdeg..[[deg 360deg]]
else
return_ = string.gsub(return_, ",$", "")
end
return mw.html.create('div'):css('width', width):css('height', height):tag('div'):css('border-radius', '50%'):css('background', 'conic-gradient('..return_..')'):cssText('width:inherit;height:inherit;'):allDone()
end
return pie