Template:MassBank/Matrix
From Metabolomics.JP
(Difference between revisions)
m |
m |
||
Line 74: | Line 74: | ||
print("<big>Illegal ion order (check mass!): "..x.." < "..formula.."</big><br/>") | print("<big>Illegal ion order (check mass!): "..x.." < "..formula.."</big><br/>") | ||
end | end | ||
− | x = formula | + | x = formula |
− | y[formula] = true | + | y[formula] = true |
end | end | ||
---Check Fragments--- | ---Check Fragments--- | ||
Line 85: | Line 85: | ||
end | end | ||
---Write Matrix--- | ---Write Matrix--- | ||
− | print("<small>") | + | print("<small>") |
− | print('{# class ="wikitable"') | + | print('{# class ="wikitable"') |
local axis = {}; | local axis = {}; | ||
local i = 1; | local i = 1; | ||
for formula in string.gmatch(ruler, "([%S]+)") do | for formula in string.gmatch(ruler, "([%S]+)") do | ||
− | axis[i] = formula | + | axis[i] = formula |
− | i = i + 1 | + | i = i + 1 |
end | end | ||
---Header--- | ---Header--- | ||
− | print("#-\n") | + | print("#-\n") |
− | print("## {{PAGENAME}} \n") | + | print("## {{PAGENAME}} \n") |
for i=1, table.getn(axis) do | for i=1, table.getn(axis) do | ||
− | print("#style='text-align:right'# " .. mass(axis[i]) .. "<br/>" .. axis[i]) | + | print("#style='text-align:right'# " .. mass(axis[i]) .. "<br/>" .. axis[i]) |
end | end | ||
---Rows--- | ---Rows--- | ||
for i=1, table.getn(axis) do | for i=1, table.getn(axis) do | ||
− | print("#-\n") | + | print("#-\n") |
− | print("#style='text-align:right'# " .. mass(axis[i]) .. "<br/>" .. axis[i]) | + | print("#style='text-align:right'# " .. mass(axis[i]) .. "<br/>" .. axis[i]) |
for j=1, table.getn(axis) do | for j=1, table.getn(axis) do | ||
if (j < i) then | if (j < i) then | ||
s = diff(axis[j],axis[i]); | s = diff(axis[j],axis[i]); | ||
if (s == nil) | if (s == nil) | ||
− | then print('#style="background-color:gray"# ') | + | then print('#style="background-color:gray"# ') |
else | else | ||
if (fragments[axis[j]] ~= nil and fragments[axis[j]][axis[i]] ~= nil) then | if (fragments[axis[j]] ~= nil and fragments[axis[j]][axis[i]] ~= nil) then | ||
− | print('#style="background-color:orange"# ' .. s) | + | print('#style="background-color:orange"# ' .. s) |
− | else print('## ' .. s) | + | else print('## ' .. s) end |
end | end | ||
− | else print('#style="background-color:white"# ') | + | else print('#style="background-color:white"# ') |
end | end | ||
end | end | ||
− | print("\n") | + | print("\n") |
end | end | ||
− | print("#}") | + | print("#}") |
− | print("</small>") | + | print("</small>") |
---End of Matrix--- | ---End of Matrix--- | ||
| | | | ||
Line 140: | Line 140: | ||
---find and print comments--- | ---find and print comments--- | ||
FORMULA_CHAR = "CHNOPSl0-9"; | FORMULA_CHAR = "CHNOPSl0-9"; | ||
+ | ret = "" | ||
+ | comment = ""; | ||
for line in stdin:gmatch("[%S ,]+") do | for line in stdin:gmatch("[%S ,]+") do | ||
− | + | repeat | |
− | if ( | + | if (string.find(line, "^&&[&%a%d]+&&$") ~= nil) then break end |
− | + | h, t = string.match(line, "^(["..FORMULA_CHAR.."]+) *: *(["..FORMULA_CHAR.." ]+)$"); | |
+ | if (h ~= nil and t ~= nil) then | ||
+ | if (comment ~= "") then | ||
+ | ret = ret .. "#-\n" | ||
+ | ret = ret .. "##"..head.." ## "..tail.."\n" | ||
+ | ret = ret .. "## "..comment.."\n" | ||
+ | comment = "" | ||
+ | end | ||
+ | head = h; tail = t | ||
+ | break | ||
end | end | ||
+ | ---comment lines--- | ||
+ | comment = comment .. line | ||
+ | until true | ||
+ | end | ||
+ | if (ret ~= "") then | ||
+ | ret = '{# class="wikitable sortable"'.. ret ..'#}' | ||
+ | print(ret) | ||
end | end | ||
|{{{data|CHClNOPS}}} | |{{{data|CHClNOPS}}} | ||
}} | }} |
Revision as of 01:36, 14 May 2009
No 'ION INFO' line in the form &&(formula)&&(formula)&&...&&
MassBank/Matrix | 64 CHClONSP |
64 CHClONSP |
|