119 lines
2.5 KiB
JavaScript
119 lines
2.5 KiB
JavaScript
/**
|
|
* Logarithm Graph Creator - Create graphs with logarithm scales.
|
|
* Copyright (C) 2020 Ad5001
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
var powerpos = {
|
|
"-": "⁻",
|
|
"0": "⁰",
|
|
"1": "¹",
|
|
"2": "²",
|
|
"3": "³",
|
|
"4": "⁴",
|
|
"5": "⁵",
|
|
"6": "⁶",
|
|
"7": "⁷",
|
|
"8": "⁸",
|
|
"9": "⁹",
|
|
"+": "⁺",
|
|
"=": "⁼",
|
|
"a": "ᵃ",
|
|
"b": "ᵇ",
|
|
"c": "ᶜ",
|
|
"d": "ᵈ",
|
|
"e": "ᵉ",
|
|
"f": "ᶠ",
|
|
"g": "ᵍ",
|
|
"h": "ʰ",
|
|
"i": "ⁱ",
|
|
"j": "ʲ",
|
|
"k": "ᵏ",
|
|
"l": "ˡ",
|
|
"m": "ᵐ",
|
|
"n": "ⁿ",
|
|
"o": "ᵒ",
|
|
"p": "ᵖ",
|
|
"r": "ʳ",
|
|
"s": "ˢ",
|
|
"t": "ᵗ",
|
|
"u": "ᵘ",
|
|
"v": "ᵛ",
|
|
"w": "ʷ",
|
|
"x": "ˣ",
|
|
"y": "ʸ",
|
|
"z": "ᶻ",
|
|
}
|
|
|
|
var indicepos = {
|
|
"-": "₋",
|
|
"0": "₀",
|
|
"1": "₁",
|
|
"2": "₂",
|
|
"3": "₃",
|
|
"4": "₄",
|
|
"5": "₅",
|
|
"6": "₆",
|
|
"7": "₇",
|
|
"8": "₈",
|
|
"9": "₉",
|
|
"+": "₊",
|
|
"=": "₌",
|
|
"a": "ₐ",
|
|
"e": "ₑ",
|
|
"h": "ₕ",
|
|
"i": "ᵢ",
|
|
"j": "ⱼ",
|
|
"k": "ₖ",
|
|
"l": "ₗ",
|
|
"m": "ₘ",
|
|
"n": "ₙ",
|
|
"o": "ₒ",
|
|
"p": "ₚ",
|
|
"r": "ᵣ",
|
|
"s": "ₛ",
|
|
"t": "ₜ",
|
|
"u": "ᵤ",
|
|
"v": "ᵥ",
|
|
"x": "ₓ",
|
|
}
|
|
// Put a text in sup position
|
|
function textsup(text) {
|
|
var ret = ""
|
|
text = text.toString()
|
|
for (var i = 0; i < text.length; i++) {
|
|
if(Object.keys(powerpos).indexOf(text[i]) >= 0) {
|
|
ret += powerpos[text[i]]
|
|
} else {
|
|
ret += text[i]
|
|
}
|
|
}
|
|
return ret
|
|
}
|
|
|
|
// Put a text in sub position
|
|
function textsub(text) {
|
|
var ret = ""
|
|
text = text.toString()
|
|
for (var i = 0; i < text.length; i++) {
|
|
if(Object.keys(indicepos).indexOf(text[i]) >= 0) {
|
|
ret += indicepos[text[i]]
|
|
} else {
|
|
ret += text[i]
|
|
}
|
|
}
|
|
return ret
|
|
}
|