Diferencia entre revisiones de «Módulo:Estadísticas de la pandemia de enfermedad por coronavirus de 2019-2020»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Porcentajes con un decimal
hago cambios para más eficiencia
Línea 2: Línea 2:


local args -- used as global in ModuloArgs
local args -- used as global in ModuloArgs
local Entidad -- used as global in local functions
local entidad -- used as global in local functions
local ModuloArgs = require('Módulo:Argumentos')
local ModuloArgs = require('Módulo:Argumentos')
local argumento = ModuloArgs.obtenerValorDeArgumentos
local argumento = ModuloArgs.obtenerValorDeArgumentos
local ModuloWikidata = require('Módulo:Wikidata')


function propiedad(idPropiedad,opciones)
function propiedad(idPropiedad)
-- global Entidad
-- global entidad
local statements = mw.wikibase.getBestStatements(entidad, idPropiedad)
return ModuloWikidata.propiedad( Entidad, idPropiedad, opciones or {} )
return statements[#statements].mainsnak.datavalue.value.amount
end
end


function z.Fila(frame)
function z.Fila(frame)
ModuloArgs.obtenerTablaDeArgumentos(frame)
ModuloArgs.obtenerTablaDeArgumentos(frame)
local entidad = argumento{'entidad'}
entidad = argumento{'entidad'}
Entidad = mw.wikibase.getEntityObject( entidad ) or {}
local lang = mw.language.getContentLanguage()
local lang = mw.language.getContentLanguage()
local nombre = argumento{'país'} or ''
local nombre = argumento{'país'} or ''
local poblacion = argumento{'población'}
local poblacion = argumento{'población'}
local confirmados = argumento{'confirmados', {propiedad, 'P1603', {id=entidad,uno='último'}} }
local confirmados = argumento{'confirmados', {propiedad, 'P1603'} }
local fallecidos = argumento{'fallecidos', {propiedad, 'P1120', {id=entidad,uno='último'}} }
local fallecidos = argumento{'fallecidos', {propiedad, 'P1120'} }
local recuperados = argumento{'recuperados', {propiedad, 'P8010', {id=entidad,uno='último'}} }
local recuperados = argumento{'recuperados', {propiedad, 'P8010'} }
local valorPoblacion = poblacion and tonumber(poblacion) or 0
local valorPoblacion = poblacion and tonumber(poblacion) or 0
local valorConfirmados = confirmados and tonumber(confirmados) or 0
local valorConfirmados = confirmados and tonumber(confirmados) or 0

Revisión del 21:33 2 sep 2020

Este módulo no tiene página de documentación[crear]
local z = {}

local args			-- used as global in ModuloArgs
local entidad		-- used as global in local functions
local ModuloArgs     = require('Módulo:Argumentos')
local argumento      = ModuloArgs.obtenerValorDeArgumentos

function propiedad(idPropiedad)
	-- global entidad
	local statements = mw.wikibase.getBestStatements(entidad, idPropiedad)
	return statements[#statements].mainsnak.datavalue.value.amount
end

function z.Fila(frame)
	ModuloArgs.obtenerTablaDeArgumentos(frame)
	entidad = argumento{'entidad'}
	local lang = mw.language.getContentLanguage()
	local nombre = argumento{'país'} or ''
	local poblacion = argumento{'población'}
	local confirmados = argumento{'confirmados', {propiedad, 'P1603'} }
	local fallecidos = argumento{'fallecidos', {propiedad, 'P1120'} }
	local recuperados = argumento{'recuperados', {propiedad, 'P8010'} }
	local valorPoblacion = poblacion and tonumber(poblacion) or 0
	local valorConfirmados = confirmados and tonumber(confirmados) or 0
	local valorFallecidos = fallecidos and tonumber(fallecidos) or 0
	local valorRecuperados = recuperados and tonumber(recuperados) or 0
	local valorCxMhab = poblacion and math.floor(1000000 * valorConfirmados / valorPoblacion)
	local valorFxMhab = poblacion and math.floor(1000000 * valorFallecidos / valorPoblacion)
	local valorFx100C = confirmados and string.format('%.1f', 100 * valorFallecidos / valorConfirmados)
	local valorRx100C = confirmados and string.format('%.1f', 100 * valorRecuperados / valorConfirmados)
	local textoPoblacion = poblacion and lang:formatNum( valorPoblacion ) or ''
	local textoFallecidos = fallecidos and lang:formatNum( valorFallecidos ) or ''
	local textoConfirmados = confirmados and lang:formatNum( valorConfirmados ) or ''
	local textoRecuperados = recuperados and lang:formatNum( valorRecuperados ) or ''
	local textoCxMhab = confirmados and poblacion and lang:formatNum( valorCxMhab ) or ''
	local textoFx100C = fallecidos and confirmados and (valorFx100C .. ' %') or ''
	local textoFxMhab = fallecidos and poblacion and lang:formatNum( valorFxMhab ) or ''
	local textoRx100C = recuperados and confirmados and (valorRx100C .. ' %') or ''
	return '<tr>'
		.. '<th style="text-align: left;">' .. frame:preprocess('{{Bandera3|' .. nombre .. '}}') .. '</th>'
		.. '<td>' .. textoPoblacion .. '</td>'
		.. '<td>' .. textoConfirmados .. '</td>'
		.. '<td>' .. textoCxMhab .. '</td>'
		.. '<td>' .. textoFallecidos .. '</td>'
		.. '<td>' .. textoFx100C .. '</td>'
		.. '<td>' .. textoFxMhab .. '</td>'
		.. '<td>' .. textoRecuperados .. '</td>'
		.. '<td>' .. textoRx100C .. '</td>'
		.. '</tr>'
end

return z