提问人:Leon Hoffmann 提问时间:9/12/2023 更新时间:9/12/2023 访问量:24
CanvasJS线从原产地?
CanvasJS Line from origin?
问:
我有一个生成的带有单个数据点的折线图。现在我建议添加一条从原点到数据点的线。我该怎么做?
如果需要,这是我的代码。
<style>
table.center {
margin-left: auto;
margin-right: auto;
}
</style>
<html>
</html>
<?php include '../header.php';
//Sitzung Initialisieren
session_start();
//$_SESSION['Ueberpruefung'] = 'N';
$user = "";
include('../../inc/server.php');
$connectionInfo = array(
"UID" => $uid,
"PWD" => $pwd,
"Database" => $databaseName2,
"CharacterSet" => $CharacterSet
);
$conn = sqlsrv_connect($serverName, $connectionInfo);
$Seriennummer = $_REQUEST['SN'];
echo "<img src='../images/header.png' width=100%>";
$query = "select
T1.ItemCode,
T1.itemname,
T1.FrgnName,
T1.U_td_pistonarea as 'Kolbenfläche',
convert(int,T1.U_td_opressure) as 'Betriebsdruck',
convert(int,T1.U_td_tension) as 'Spannkraft'
from
OINS T0
left join OITM T1 ON T0.itemCode = T1.ItemCode
where
T0.internalSN = '$Seriennummer'
order by T0.createDate DESC";
$tsql = iconv('', '', $query);
//Absetzen des SQL Befehls
$stmt = sqlsrv_query($conn, $tsql);
if ($stmt) {
} else {
echo "Fehler beim ausführen des Statements.\n";
die(print_r(sqlsrv_errors(), true));
}
//Beschreibung der Datensätze
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_NUMERIC)) {
$ITHBestellnummer = $row[1];
$Bennenung = $row[2];
$Typ = $row[3];
$Kolbengroesse = $row[3];
$Betriebsdruck = $row[4];
$Spannkraft = $row[5];
}
$Spannaddierer = $Spannkraft / $Kolbengroesse;
$Betriebsaddierer = $Betriebsdruck / $Kolbengroesse;
$BerechnungSpann = '';
$Berechnungdruck = '';
if ($Spannaddierer)
echo "<div style='text-align:center;'>";
echo "<h3>Rechner für SSZ der Seriennummer : $Seriennummer</h3>";
echo "<h3>Calculator for SSZ of the Serialnumber : $Seriennummer</h3>";
echo "<p>";
echo "<p>";
echo "<form name='Umrechnung1'>";
echo "<input type='hidden' size='20' name='Kolbengroesse' value = '$Kolbengroesse'>";
echo " Spannkraft|tension [kN] <input type='number' size='20' name='Spann' onkeyup='SpannzuBetrieb()'>";
echo "<input type='BUTTON' disabled value=' = '>";
echo "<input type='number' size='20' name='Druckv' onkeyup='BetriebzuSpann()'>Druck|pressure [bar]";
echo "<br>";
echo "<br>";
echo "<input type='BUTTON' value='clear' onclick='clearboth()'>";
echo "</form>";
echo "</div>";
$Wertspannkraft = 0;
$Wertbetrieb = 0;
$zaehler = 0;
$zaehler2 = 0;
$arraywert = [];
// printing table headers with desired column names
//table
?>
<table class="table-fill">
<thead>
<tr>
<th class="text-left">Duck/pressure [bar]</th>
<th class="text-left">Spannkraft/tension [kN]</th>
</tr>
</thead>
<tbody class="table-hover">
<?php
echo "<tr>";
echo "<td class='text-left'>0</td>";
echo "<td class='text-left'>0</td>";
echo "</tr>";
while ($Wertspannkraft < $Spannkraft & $Wertbetrieb < $Betriebsdruck) {
$arraywert[] = array("x" => $Wertspannkraft, "y" => $Wertbetrieb);
$Wertbetrieb = $Wertbetrieb + $Betriebsaddierer;
$Wertspannkraft = $Wertspannkraft + $Spannaddierer;
$tablebetrieb = round($Wertbetrieb, 1);
$tablespann = round($Wertspannkraft, 1);
if ($Betriebsdruck < 1500) {
if ($zaehler <= 400) {
$zaehler = $zaehler + 1;
} else {
echo "<tr>";
echo "<td class='text-left'>";
echo $tablebetrieb;
echo "</td>";
echo "<td class='text-left'>";
echo $tablespann;
echo "</td>";
echo "</tr>";
$zaehler = 0;
}
} else {
if ($zaehler2 <= 1200) {
$zaehler2 = $zaehler2 + 1;
} else {
echo "<tr>";
echo "<td class='text-left'>";
echo $tablebetrieb;
echo "</td>";
echo "<td class='text-left'>";
echo $tablespann;
echo "</td>";
echo "</tr>";
$zaehler2 = 0;
}
}
}
$dataPoints[] = array("x" => $Spannkraft, "y" => $Betriebsdruck);
echo "<tr>";
echo "<td class='text-left'>$Betriebsdruck</td>";
echo "<td class='text-left'>$Spannkraft</td>";
echo "</tr>";
echo "</tbody>";
echo "</table>";
echo "<br>";
echo "<h4 class=h4>Spannkraft für Schraubenspannzylinder Nummer : $ITHBestellnummer</h4>";
echo "<h4 class=h4>Tension for SSZ number : $ITHBestellnummer</h4>";
include '../content.php';
?>
<div id="chartContainer"></div>
<script type="text/javascript">
$(function() {
var MaxwertY = <?php echo json_encode($Betriebsdruck); ?>;
var MaxwertX = <?php echo json_encode($Spannkraft); ?>;
const ctx = canvas.getContext("2d");
var chart = new CanvasJS.Chart("chartContainer", {
theme: "light2",
zoomEnabled: true,
animationEnabled: true,
title: {
text: "Graph kN/bar"
},
axisX: {
title: "Max Spannkraft|tension: " + MaxwertX,
maximum: (MaxwertX+150),
minimum: (MaxwertX-150),
stripLines: [{
value: MaxwertX,
label: MaxwertX,
showOnTop: true,
labelPlacement: "inside",
labelFontColor: "black",
color: "black"
}],
valueFormatString: "####"
},
data: [{
type: "splineArea",
xValueFormatString: "####",
}],
axisY: {
title: "Max Druck|pressure: " + MaxwertY + "\n(Rote Linie Prüfdruck)" +(MaxwertY+50),
maximum: (MaxwertY+350),
minimum: (MaxwertY-350),
stripLines: [{
value: MaxwertY,
label: MaxwertY,
showOnTop: true,
labelPlacement: "inside"
}],
stripLines: [{
value: MaxwertY,
label: MaxwertY,
labelPlacement: "outside",
labelFontColor: "black",
color: "black"
},
{
value: (MaxwertY+50),
label: "Prüfdruck",
labelPlacement: "inside",
labelFontColor: "red",
color: "red"
}
],
valueFormatString: "####"
},
data: [{
type: "splineArea",
xValueFormatString: "####",
}],
subtitles: [{
}],
data: [{
type: "line",
dataPoints: <?php echo json_encode($dataPoints, JSON_NUMERIC_CHECK); ?>,
}]
});
chart.render();
});
var Spannkraft = "<?php echo $Spannkraft ?>";
var Betriebsdruck = "<?php echo $Betriebsdruck ?>";
var Spannbetrag, Druckbetrag, Kolbengroesse;
function SpannzuBetrieb() {
Kolbengroesse = document.Umrechnung1.Kolbengroesse.value;
Spannbetrag = document.Umrechnung1.Spann.value;
spannrech = parseInt(Spannbetrag);
if (spannrech <= Spannkraft) {
Druckbetrag = (Spannbetrag * 10000) / Kolbengroesse;
document.Umrechnung1.Druckv.value = Druckbetrag.toFixed(1);
} else {
alert("Wert zu Groß!");
clearboth();
}
}; // Ende der Funktion
function BetriebzuSpann() {
Kolbengroesse = document.Umrechnung1.Kolbengroesse.value;
Druckbetrag = document.Umrechnung1.Druckv.value;
betriebrech = parseInt(Druckbetrag);
if (betriebrech <= Betriebsdruck) {
Spannbetrag = (Druckbetrag / 10000) * Kolbengroesse;
document.Umrechnung1.Spann.value = Spannbetrag.toFixed(1);
} else {
alert("Wert zu Groß!");
clearboth();
}
}; // Ende der Funktion
function clearboth() {
document.Umrechnung1.Spann.value = '';
document.Umrechnung1.Druckv.value = '';
}
</script>
如果对我的代码有任何疑问,请随时提问。
我没有什么要补充的了,但我必须再添加一些文字,所以这里有一个无用的段落。
答: 暂无答案
评论