<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.tiffa.net/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AChartColors</id>
	<title>Module:ChartColors - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tiffa.net/w/index.php?action=history&amp;feed=atom&amp;title=Module%3AChartColors"/>
	<link rel="alternate" type="text/html" href="https://wiki.tiffa.net/w/index.php?title=Module:ChartColors&amp;action=history"/>
	<updated>2026-04-05T22:15:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.tiffa.net/w/index.php?title=Module:ChartColors&amp;diff=3480&amp;oldid=prev</id>
		<title>imported&gt;Fire: ページの作成:「local p = {}  local ARG = require &quot;Module:Arguments&quot; local CFCM = require &quot;Module:ComplForColorModules&quot; local TNTT = require &quot;Module:TNTTools&quot; --local SD = require &quot;Modul…」</title>
		<link rel="alternate" type="text/html" href="https://wiki.tiffa.net/w/index.php?title=Module:ChartColors&amp;diff=3480&amp;oldid=prev"/>
		<updated>2021-01-30T10:05:19Z</updated>

		<summary type="html">&lt;p&gt;ページの作成:「local p = {}  local ARG = require &amp;quot;Module:Arguments&amp;quot; local CFCM = require &amp;quot;Module:ComplForColorModules&amp;quot; local TNTT = require &amp;quot;Module:TNTTools&amp;quot; --local SD = require &amp;quot;Modul…」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
local ARG = require &amp;quot;Module:Arguments&amp;quot;&lt;br /&gt;
local CFCM = require &amp;quot;Module:ComplForColorModules&amp;quot;&lt;br /&gt;
local TNTT = require &amp;quot;Module:TNTTools&amp;quot;&lt;br /&gt;
--local SD = require &amp;quot;Module:SimpleDebug&amp;quot;&lt;br /&gt;
&lt;br /&gt;
local I18n = &amp;#039;ChartColors&amp;#039;&lt;br /&gt;
&lt;br /&gt;
local function I18nStr (S, ...)&lt;br /&gt;
	return TNTT.GetMsgP (I18n, S, {...})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--local RS_ColorNameInvalid = &amp;#039;El nom del color (%s) no és vàlid (ha de ser Categ20 o Plotter)&amp;#039;&lt;br /&gt;
--local RS_ColorNumInvalid = &amp;#039;El nombre de colors hauria d’estar entre 1 i %d (ara és %d)&amp;#039;&lt;br /&gt;
--local RS_StartNumInvalid = &amp;#039;El número del primer color hauria d’estar entre 1 i %d (ara és %d)&amp;#039;&lt;br /&gt;
&lt;br /&gt;
local category20 = {&lt;br /&gt;
	&amp;#039;#1f77b4&amp;#039;, &amp;#039;#aec7e8&amp;#039;, &amp;#039;#ff7f0e&amp;#039;, &amp;#039;#ffbb78&amp;#039;, &amp;#039;#2ca02c&amp;#039;, &amp;#039;#98df8a&amp;#039;, &amp;#039;#d62728&amp;#039;, &amp;#039;#ff9896&amp;#039;, &amp;#039;#9467bd&amp;#039;, &amp;#039;#c5b0d5&amp;#039;, &lt;br /&gt;
	&amp;#039;#8c564b&amp;#039;, &amp;#039;#c49c94&amp;#039;, &amp;#039;#e377c2&amp;#039;, &amp;#039;#f7b6d2&amp;#039;, &amp;#039;#7f7f7f&amp;#039;, &amp;#039;#c7c7c7&amp;#039;, &amp;#039;#bcbd22&amp;#039;, &amp;#039;#dbdb8d&amp;#039;, &amp;#039;#17becf&amp;#039;, &amp;#039;#9edae5&amp;#039;,&lt;br /&gt;
}&lt;br /&gt;
local plotter = {--from Module:Plotter/DefaultColors&lt;br /&gt;
	&amp;#039;red&amp;#039;, &amp;#039;blue&amp;#039;, &amp;#039;green&amp;#039;, &amp;#039;yellow&amp;#039;, &amp;#039;fuchsia&amp;#039;, &amp;#039;aqua&amp;#039;, &amp;#039;brown&amp;#039;, &amp;#039;orange&amp;#039;, &amp;#039;purple&amp;#039;, &amp;#039;sienna&amp;#039;,&lt;br /&gt;
	&amp;#039;#F0A3FF&amp;#039;, &amp;#039;#191919&amp;#039;, &amp;#039;#005C31&amp;#039;, &amp;#039;honeydew&amp;#039;, &amp;#039;#808080&amp;#039;, &amp;#039;khaki&amp;#039;, &amp;#039;lime&amp;#039;, &amp;#039;navy&amp;#039;, &amp;#039;pink&amp;#039;, &amp;#039;#426600&amp;#039;,&lt;br /&gt;
	&amp;#039;#5EF1F2&amp;#039;, &amp;#039;turquoise&amp;#039;, &amp;#039;#E0FF66&amp;#039;, &amp;#039;violet&amp;#039;, &amp;#039;#FFFF80&amp;#039;, &amp;#039;#FF5005&amp;#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function p.GetColors (ColorName, IsInv, StartN, N, CallError)&lt;br /&gt;
	local SelColors = {}&lt;br /&gt;
	local ColorNameL = string.lower(ColorName)&lt;br /&gt;
	local Palet0 = {}&lt;br /&gt;
	if ColorNameL == &amp;#039;categ20&amp;#039; then&lt;br /&gt;
		Palet0 = category20&lt;br /&gt;
	elseif ColorNameL == &amp;#039;plotter&amp;#039; then&lt;br /&gt;
		Palet0 = plotter &lt;br /&gt;
	elseif CallError then	&lt;br /&gt;
		error (I18nStr (&amp;#039;ColorNameInvalid&amp;#039;,ColorName))&lt;br /&gt;
	end	&lt;br /&gt;
	MaxN = table.getn(Palet0)&lt;br /&gt;
	if (N &amp;lt; 0) or (N &amp;gt; MaxN) then&lt;br /&gt;
		error (I18nStr (&amp;#039;ColorNumInvalid&amp;#039;,tostring(MaxN),tostring(N)))&lt;br /&gt;
	else&lt;br /&gt;
		Palet = {}&lt;br /&gt;
		if IsInv then&lt;br /&gt;
			for i=MaxN, 1, -1 do&lt;br /&gt;
				table.insert(Palet, Palet0[i])&lt;br /&gt;
			end	&lt;br /&gt;
		else&lt;br /&gt;
			Palet = Palet0&lt;br /&gt;
		end&lt;br /&gt;
		if StartN &amp;gt; MaxN then&lt;br /&gt;
			error (I18nStr (&amp;#039;StartNumInvalid&amp;#039;,tostring(MaxN),tostring(StartN)))&lt;br /&gt;
		end	&lt;br /&gt;
		local Step = 1&lt;br /&gt;
		local NEnd = N&lt;br /&gt;
		if (ColorNameL == &amp;#039;categ20&amp;#039;) and (N&amp;lt;=10) then &lt;br /&gt;
			Step = 2&lt;br /&gt;
			if StartN == 1 then&lt;br /&gt;
				NEnd = N*2&lt;br /&gt;
			end	&lt;br /&gt;
		end	&lt;br /&gt;
		if StartN == 1 then&lt;br /&gt;
			for i=1, NEnd, Step do&lt;br /&gt;
				table.insert(SelColors, Palet[i])&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			Count = 0&lt;br /&gt;
			for i=StartN, MaxN, Step do&lt;br /&gt;
				table.insert(SelColors, Palet[i])&lt;br /&gt;
				Count = Count + 1&lt;br /&gt;
				if Count == NEnd then&lt;br /&gt;
					break&lt;br /&gt;
				end	&lt;br /&gt;
			end&lt;br /&gt;
			if Count &amp;lt; NEnd then&lt;br /&gt;
				for i=1, MaxN, Step do&lt;br /&gt;
					table.insert(SelColors, Palet[i])&lt;br /&gt;
					Count = Count + 1&lt;br /&gt;
					if Count == NEnd then&lt;br /&gt;
						break&lt;br /&gt;
					end	&lt;br /&gt;
				end&lt;br /&gt;
			end	&lt;br /&gt;
		end	&lt;br /&gt;
		return SelColors&lt;br /&gt;
	end	&lt;br /&gt;
end --GetColors&lt;br /&gt;
&lt;br /&gt;
function p.ColorNameInvStartFromS (S)&lt;br /&gt;
	local StartN = 1&lt;br /&gt;
	local ParamsA = {}&lt;br /&gt;
	local ColorName, IsInv&lt;br /&gt;
    ColorName, IsInv, ParamsA = CFCM.ColorNameInvFromS0 (S)&lt;br /&gt;
	local PN = table.getn(ParamsA)&lt;br /&gt;
	if PN &amp;gt; 1 then&lt;br /&gt;
		if ParamsA[2]==&amp;#039;i&amp;#039; then&lt;br /&gt;
			IsInv = true&lt;br /&gt;
		else&lt;br /&gt;
			StartN = tonumber (ParamsA[2])&lt;br /&gt;
		end&lt;br /&gt;
		if PN == 3 then&lt;br /&gt;
			StartN = tonumber (ParamsA[3])&lt;br /&gt;
		end	&lt;br /&gt;
	end	&lt;br /&gt;
	return ColorName, IsInv, StartN			    	&lt;br /&gt;
end --ColorNameInvStartFromS&lt;br /&gt;
&lt;br /&gt;
function ColorNameInv (args)&lt;br /&gt;
	local S = args[1] or &amp;#039;&amp;#039;&lt;br /&gt;
    local ColorName, IsInv, ParamsA = CFCM.ColorNameInvFromS0 (S)&lt;br /&gt;
    local StartN = 1&lt;br /&gt;
	ColorName, IsInv, StartN = p.ColorNameInvStartFromS (S)&lt;br /&gt;
	return ColorName, IsInv, StartN			    	&lt;br /&gt;
end --ColorNameInv	&lt;br /&gt;
&lt;br /&gt;
function p.ShowColors(frame)&lt;br /&gt;
	local args = ARG.getArgs(frame,{&lt;br /&gt;
		removeBlanks = false&lt;br /&gt;
	});&lt;br /&gt;
	local ColorName, IsInv, StartN = ColorNameInv (args)&lt;br /&gt;
	local N = tonumber(args[2])&lt;br /&gt;
	local WriteColor = args[3] or &amp;quot;&amp;quot;&lt;br /&gt;
	local ColorFound = {}&lt;br /&gt;
	ColorFound = p.GetColors (ColorName, IsInv, StartN, N, true)&lt;br /&gt;
	local boxes = {}&lt;br /&gt;
	for i=1, table.getn(ColorFound) do&lt;br /&gt;
		table.insert(boxes, CFCM.Box(ColorFound[i],WriteColor))&lt;br /&gt;
	end	&lt;br /&gt;
	return table.concat(boxes, &amp;quot; &amp;quot;)&lt;br /&gt;
end --ShowColors&lt;br /&gt;
&lt;br /&gt;
function p.Legends(frame)&lt;br /&gt;
	local args = ARG.getArgs(frame,{&lt;br /&gt;
		removeBlanks = false&lt;br /&gt;
	})&lt;br /&gt;
	local Nargs = require(&amp;quot;Module:TableTools&amp;quot;).length(args)&lt;br /&gt;
	local ColorName, IsInv, StartN = ColorNameInv (args)&lt;br /&gt;
	local N = tonumber(args[2])&lt;br /&gt;
	local ColWidth = args[3]&lt;br /&gt;
	local ColorFound = {}&lt;br /&gt;
	local Labels = {}&lt;br /&gt;
	local NLabels = 0&lt;br /&gt;
	local IsTemplate = true&lt;br /&gt;
	ColorFound = p.GetColors (ColorName, IsInv, StartN, N, true)&lt;br /&gt;
	Labels, NLabels, OutlineColor = CFCM.GetLabels (args, N, 4)&lt;br /&gt;
	return CFCM.LegendText (ColorFound, Labels, NLabels, ColWidth, IsTemplate, OutlineColor)&lt;br /&gt;
end	&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Fire</name></author>
	</entry>
</feed>