<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://www.vigyanwiki.in/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://www.vigyanwiki.in/index.php?action=history&amp;feed=atom&amp;title=Module%3AChartColors"/>
	<link rel="alternate" type="text/html" href="https://www.vigyanwiki.in/index.php?title=Module:ChartColors&amp;action=history"/>
	<updated>2026-04-26T20:26:41Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://www.vigyanwiki.in/index.php?title=Module:ChartColors&amp;diff=23710&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://www.vigyanwiki.in/index.php?title=Module:ChartColors&amp;diff=23710&amp;oldid=prev"/>
		<updated>2022-11-15T03:41:55Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:11, 15 November 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en-GB&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://www.vigyanwiki.in/index.php?title=Module:ChartColors&amp;diff=23709&amp;oldid=prev</id>
		<title>wikipedia&gt;ProcrastinatingReader: not used? Wikipedia_talk%3ALua#Help_find_and_remove_a_testing_module</title>
		<link rel="alternate" type="text/html" href="https://www.vigyanwiki.in/index.php?title=Module:ChartColors&amp;diff=23709&amp;oldid=prev"/>
		<updated>2020-07-23T12:01:39Z</updated>

		<summary type="html">&lt;p&gt;not used? &lt;a href=&quot;/index.php?title=Wikipedia_talk:Lua&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Wikipedia talk:Lua (page does not exist)&quot;&gt;Wikipedia_talk:Lua#Help_find_and_remove_a_testing_module&lt;/a&gt;&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 = 'ChartColors'&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 = 'El nom del color (%s) no és vàlid (ha de ser Categ20 o Plotter)'&lt;br /&gt;
--local RS_ColorNumInvalid = 'El nombre de colors hauria d’estar entre 1 i %d (ara és %d)'&lt;br /&gt;
--local RS_StartNumInvalid = 'El número del primer color hauria d’estar entre 1 i %d (ara és %d)'&lt;br /&gt;
&lt;br /&gt;
local category20 = {&lt;br /&gt;
	'#1f77b4', '#aec7e8', '#ff7f0e', '#ffbb78', '#2ca02c', '#98df8a', '#d62728', '#ff9896', '#9467bd', '#c5b0d5', &lt;br /&gt;
	'#8c564b', '#c49c94', '#e377c2', '#f7b6d2', '#7f7f7f', '#c7c7c7', '#bcbd22', '#dbdb8d', '#17becf', '#9edae5',&lt;br /&gt;
}&lt;br /&gt;
local plotter = {--from Module:Plotter/DefaultColors&lt;br /&gt;
	'red', 'blue', 'green', 'yellow', 'fuchsia', 'aqua', 'brown', 'orange', 'purple', 'sienna',&lt;br /&gt;
	'#F0A3FF', '#191919', '#005C31', 'honeydew', '#808080', 'khaki', 'lime', 'navy', 'pink', '#426600',&lt;br /&gt;
	'#5EF1F2', 'turquoise', '#E0FF66', 'violet', '#FFFF80', '#FF5005',&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 == 'categ20' then&lt;br /&gt;
		Palet0 = category20&lt;br /&gt;
	elseif ColorNameL == 'plotter' then&lt;br /&gt;
		Palet0 = plotter &lt;br /&gt;
	elseif CallError then	&lt;br /&gt;
		error (I18nStr ('ColorNameInvalid',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 ('ColorNumInvalid',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 ('StartNumInvalid',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 == 'categ20') 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]=='i' 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 ''&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>wikipedia&gt;ProcrastinatingReader</name></author>
	</entry>
</feed>