mirror of
https://github.com/LCPQ/QUESTDB_website.git
synced 2024-12-25 13:53:48 +01:00
Improve statistics table
This commit is contained in:
parent
c5208d13b5
commit
0714161047
@ -268,71 +268,67 @@ draft: false
|
|||||||
key.shift()
|
key.shift()
|
||||||
Reflect.setPrototypeOf(key[0], method.prototype)
|
Reflect.setPrototypeOf(key[0], method.prototype)
|
||||||
//Reflect.setPrototypeOf(key[1], DOI.prototype)
|
//Reflect.setPrototypeOf(key[1], DOI.prototype)
|
||||||
for (const [i, el] of key.entries()) {
|
th = $("<th/>", { scope: "column" })
|
||||||
var td = $("<th/>",{scope:"column"})
|
const [meth, doi] = key
|
||||||
if (i === 1) {
|
th.clone().text(meth.toString("\n").split('-').join('\u2011')).appendTo(row)
|
||||||
var publi = doiCache.get(el, true)
|
var thdoi = th.clone()
|
||||||
const sets = await getSets()
|
var publi = doiCache.get(doi, true)
|
||||||
if (sets.has(el)) {
|
const sets = await getSets()
|
||||||
var str = sets.get(el)
|
if (sets.has(doi)) {
|
||||||
$(td).append(str+ " ")
|
var str = sets.get(doi)
|
||||||
}
|
$(thdoi).append(str + " ")
|
||||||
$("<a/>", {
|
|
||||||
href: new DOI(el).url,
|
|
||||||
target: "_blank"
|
|
||||||
}).html(publi.format('citation', {
|
|
||||||
format: 'html',
|
|
||||||
lang: 'en-US'
|
|
||||||
})).appendTo(td)
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$(td).text(el)
|
|
||||||
}
|
|
||||||
$(row).append(td)
|
|
||||||
}
|
}
|
||||||
const noNanVals = (vals.every((v) => Number.isNaN(v))) ? vals : (vals.filter((v) => !Number.isNaN(v)))
|
$("<a/>", {
|
||||||
const avals = noNanVals.map(v => Math.abs(v))
|
href: new DOI(doi).url,
|
||||||
for (const val of [ss.min(noNanVals), ss.max(noNanVals), ss.mean(noNanVals), ss.mean(avals), ss.median(noNanVals), ss.median(avals), ss.rootMeanSquare(noNanVals), ss.variance(noNanVals), ss.standardDeviation(noNanVals)]) {
|
target: "_blank"
|
||||||
$("<td/>").text(noNanFixed(val, 2)).appendTo(row)
|
}).html(publi.format('citation', {
|
||||||
|
format: 'html',
|
||||||
|
lang: 'en-US'
|
||||||
|
})).appendTo(thdoi)
|
||||||
|
$(row).append(thdoi)
|
||||||
|
const noNanVals = (vals.every((v) => Number.isNaN(v))) ? vals : (vals.filter((v) => !Number.isNaN(v)))
|
||||||
|
const avals = noNanVals.map(v => Math.abs(v))
|
||||||
|
for (const val of [ss.min(noNanVals), ss.max(noNanVals), ss.mean(noNanVals), ss.mean(avals), ss.median(noNanVals), ss.median(avals), ss.rootMeanSquare(noNanVals), ss.variance(noNanVals), ss.standardDeviation(noNanVals)]) {
|
||||||
|
$("<td/>").text(noNanFixed(val, 2)).appendTo(row)
|
||||||
|
}
|
||||||
|
$(stb).append(row)
|
||||||
|
var box = {
|
||||||
|
x: noNanVals,
|
||||||
|
amean: ss.mean(avals).toFixed(3),
|
||||||
|
name: key[0].toString() + " MAD : " + ss.mean(avals).toPrecision(4),
|
||||||
|
type: 'box',
|
||||||
|
boxmean: 'sd'
|
||||||
|
};
|
||||||
|
graphdat.push(box)
|
||||||
|
}
|
||||||
|
var layout = {
|
||||||
|
paper_bgcolor: 'rgba(0,0,0,0)',
|
||||||
|
plot_bgcolor: 'rgba(0,0,0,0)',
|
||||||
|
gap: 0,
|
||||||
|
legend: {
|
||||||
|
traceorder: 'reversed',
|
||||||
|
},
|
||||||
|
xaxis: {
|
||||||
|
title: {
|
||||||
|
text: 'Energy (eV)',
|
||||||
}
|
}
|
||||||
$(stb).append(row)
|
},
|
||||||
var box = {
|
bgcolor: '#E2E2E2',
|
||||||
x: noNanVals,
|
bordercolor: '#FFFFFF',
|
||||||
amean: ss.mean(avals).toFixed(3),
|
borderwidth: 2,
|
||||||
name: key[0].toString() + " MAD : " + ss.mean(avals).toPrecision(4),
|
// autosize: false,
|
||||||
type: 'box',
|
width: 850,
|
||||||
boxmean: 'sd'
|
height: 500,
|
||||||
};
|
margin: {
|
||||||
graphdat.push(box)
|
l: 0,
|
||||||
}
|
r: 10,
|
||||||
var layout = {
|
b: 15,
|
||||||
paper_bgcolor: 'rgba(0,0,0,0)',
|
t: 20,
|
||||||
plot_bgcolor: 'rgba(0,0,0,0)',
|
pad: 0,
|
||||||
gap: 0,
|
},
|
||||||
legend: {
|
}
|
||||||
traceorder: 'reversed',
|
Plotly.newPlot('graph_div', graphdat, layout);
|
||||||
},
|
processingIndicator.isActive = false
|
||||||
xaxis: {
|
|
||||||
title: {
|
|
||||||
text: 'Energy (eV)',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
bgcolor: '#E2E2E2',
|
|
||||||
bordercolor: '#FFFFFF',
|
|
||||||
borderwidth: 2,
|
|
||||||
// autosize: false,
|
|
||||||
width: 850,
|
|
||||||
height: 500,
|
|
||||||
margin: {
|
|
||||||
l: 0,
|
|
||||||
r: 10,
|
|
||||||
b: 15,
|
|
||||||
t: 20,
|
|
||||||
pad: 0,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
Plotly.newPlot('graph_div', graphdat, layout);
|
|
||||||
processingIndicator.isActive = false
|
|
||||||
}
|
}
|
||||||
async function reloadContent() {
|
async function reloadContent() {
|
||||||
window.filterParams = [$("#cb_unsafe").prop("checked"), Array.from(Array.from($("#cb_exTypeList>li>input[type=checkbox]:checked")).map(el => parseInt(el.value))).reduce((pv, cv) => pv + cv, 0), Array.from(Array.from($("#cb_exVertKindList>li>input[type=checkbox]:checked")).map(el => parseInt(el.value))).reduce((pv, cv) => pv + cv, 0)]
|
window.filterParams = [$("#cb_unsafe").prop("checked"), Array.from(Array.from($("#cb_exTypeList>li>input[type=checkbox]:checked")).map(el => parseInt(el.value))).reduce((pv, cv) => pv + cv, 0), Array.from(Array.from($("#cb_exVertKindList>li>input[type=checkbox]:checked")).map(el => parseInt(el.value))).reduce((pv, cv) => pv + cv, 0)]
|
||||||
@ -399,7 +395,7 @@ draft: false
|
|||||||
var head = $("<tr/>")
|
var head = $("<tr/>")
|
||||||
$("<thead/>").addClass("sticky").append(head).appendTo(table)
|
$("<thead/>").addClass("sticky").append(head).appendTo(table)
|
||||||
var tbody = $("<tbody/>").appendTo(table)
|
var tbody = $("<tbody/>").appendTo(table)
|
||||||
var th=$("<th/>",{scope:"column"})
|
var th = $("<th/>", { scope: "column" })
|
||||||
head.append(["Molecule", "Transition"].map(x => th.clone().text(x)))
|
head.append(["Molecule", "Transition"].map(x => th.clone().text(x)))
|
||||||
head.append(sortedMethods.map(x => th.clone().text(x.toString("\n").split('-').join('\u2011'))))
|
head.append(sortedMethods.map(x => th.clone().text(x.toString("\n").split('-').join('\u2011'))))
|
||||||
adjustSticky();
|
adjustSticky();
|
||||||
@ -431,14 +427,14 @@ draft: false
|
|||||||
Reflect.setPrototypeOf(ex[3], VertExcitationKind.prototype)
|
Reflect.setPrototypeOf(ex[3], VertExcitationKind.prototype)
|
||||||
var tr = $("<tr/>")
|
var tr = $("<tr/>")
|
||||||
if (printmol) {
|
if (printmol) {
|
||||||
$("<th/>",{ scope:"row", rowspan:moldat.size}).text(molecule).appendTo(tr)
|
$("<th/>", { scope: "row", rowspan: moldat.size }).text(molecule).appendTo(tr)
|
||||||
printmol = false
|
printmol = false
|
||||||
}
|
}
|
||||||
var Vertkindtext = ""
|
var Vertkindtext = ""
|
||||||
if (ex[3].Value == VertExcitationKinds.Fluorescence.Value) {
|
if (ex[3].Value == VertExcitationKinds.Fluorescence.Value) {
|
||||||
Vertkindtext = String.raw`[${VertExcitationKinds.Fluorescence.LaTeX}]`
|
Vertkindtext = String.raw`[${VertExcitationKinds.Fluorescence.LaTeX}]`
|
||||||
}
|
}
|
||||||
$("<th/>",{scope:"row"}).text(String.raw`${LatexInline[0]}${ex[0].toLaTeX()} \rightarrow ${ex[1].toLaTeX()} ${Vertkindtext}(${ex[2].LaTeX}) ${LatexInline[1]}`).appendTo(tr)
|
$("<th/>", { scope: "row" }).text(String.raw`${LatexInline[0]}${ex[0].toLaTeX()} \rightarrow ${ex[1].toLaTeX()} ${Vertkindtext}(${ex[2].LaTeX}) ${LatexInline[1]}`).appendTo(tr)
|
||||||
var entries = Array.from(exdat.entries())
|
var entries = Array.from(exdat.entries())
|
||||||
for (const method of sortedMethods) {
|
for (const method of sortedMethods) {
|
||||||
td = $("<td/>").addClass("NumberCell")
|
td = $("<td/>").addClass("NumberCell")
|
||||||
@ -587,17 +583,17 @@ draft: false
|
|||||||
<section>
|
<section>
|
||||||
<table id="stat_table" class="datatable">
|
<table id="stat_table" class="datatable">
|
||||||
<thead class="sticky">
|
<thead class="sticky">
|
||||||
<th>Method</th>
|
<th scope="col">Method</th>
|
||||||
<th>Set</th>
|
<th scope="col">Set</th>
|
||||||
<th>Min</th>
|
<th scope="col">Min</th>
|
||||||
<th>Max</th>
|
<th scope="col">Max</th>
|
||||||
<th>Mean</th>
|
<th scope="col">MSE</th>
|
||||||
<th>Absolute Mean</th>
|
<th scope="col">MAE</th>
|
||||||
<th>Median</th>
|
<th scope="col">Median</th>
|
||||||
<th>Absolute Median</th>
|
<th scope="col">Absolute Median</th>
|
||||||
<th>RMS</th>
|
<th scope="col">RMS</th>
|
||||||
<th>Variance</th>
|
<th scope="col">Variance</th>
|
||||||
<th>Standard deviation</th>
|
<th scope="col">Standard deviation</th>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
Loading…
Reference in New Issue
Block a user