JSFiddle - React, Tailwind, and code Playground
by uggway
HTML
<script src="https://mech.fsv.cvut.cz/~stransky/software/jsmatrix/jsmatrix.src.js"></script>
<body>
<input type="file" id="rfile" name="file" />
<br>температуры
<input type=text id='temp'>
<br>давления
<input type=text id='press'>
<br>
<br>Данные температуры:
<br>
<table id='ttemp'></table>Исходные данные:
<br>
<table id='idata'></table>
<br>Результат:
<br>
<table id='pres'></table>Данные полинома
<br>
<table id='pdata'></table>Ошибка press:
<br>
<table id='terr'></table>
Ошибка ipress:
<br>
<table id='terr2'></table>
<canvas id = 'tc' ></canvas><br>
Полином:
<br>
<table id='pol'></table>
JavaScript
var tempc = 0;
var pressc = 0;
var temp = Array();
var rpress = Array();
var press = Array();
var ipress = Array();
var coefs = Array();
var ccoefs = Array();
var method = 1;
function getdata(id, a) {
var rows = $('#' + id + ' tr');
var tds = rows.find('td input');
var i = 0;
tds.each(function () {
a[i++] = parseInt(this.value);
});
}
if (window.File && window.FileReader && window.FileList && window.Blob) {
// Работает
} else {
alert('File API не поддерживается данным браузером');
}
function gentable(id, w, h) {
var t = $('#' + id);
for (var y = 0; y < h; y++) {
s = "<tr>";
for (var x = 0; x < w; x++) {
s += "<td><input type=text></td>";
}
s += "</tr>";
t.append(s);
}
}
var sfile;
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object
var rfile = files[0];
var reader = new FileReader();
// Closure to capture the file information.
reader.onload = (function (theFile) {
return function (e) {
var s = e.target.result;
sfile = s.split('\n');
var i = 0,
t = 0,
p = 0,
c = 0;
if (s == "") return;
$('#temp').val(tempc = parseInt(sfile[i++]));
$('#press').val(pressc = parseInt(sfile[i++]));
gentable("ttemp", tempc, 1);
gentable("idata", pressc, tempc);
gentable("pdata", pressc, tempc);
gentable("pres", pressc, 1);
gentable("pol", pressc, tempc);
gentable("terr", pressc, tempc);
gentable("terr2", pressc, tempc);
$("#ttemp td input").each(function () {
if (t < tempc) {
this.value = temp[t] = (parseInt(sfile[i++]) - 54000) / 1000;
t++;
}
});
t = 0;
$("#idata td input").each(function () {
...