FAQ-633 Wie zeichne ich eine Linie zwischen zwei Punkten, um die Werte für Steigung und Schnittpunkt mit der Y-Achse zu finden?

Letztes Update: 04.02.2015

Mit diesem LabTalk-Skript können Anwender die zwei Datenpunkte grafisch auswählen. Sobald diese zwei Punkte gewählt sind, wird eine Linie zwischen ihnen gezeichnet und die Werte der Steigung und des Schnittpunkts mit der Y-Achse werden als eine Textbeschriftung im Diagramm angezeigt.

def EndToolbox { %A=getpts.xdata$; %B=getpts.data$; slope=(%B(%A[2])-%B(%A[1]))/(%A[2]-%A[1]); yintercept=%B(%A[2])-slope*%A[2]; %Z="slope=$(slope) yintercept=$(yintercept)"; label -p 10 0 -s -sa -n Ltext %Z; Ltext.background=1; xb1=%A[1];xb2=%A[2];yb1=%B(%A[1]);yb2=%B(%A[2]); draw -n Lline -l {xb1,yb1,xb2,yb2}; Lline.color=2;  //set color to red delete -v xb1;delete -v xb2;delete -v yb1;delete -v yb2; delete -v slope;delete -v yintercept; doc -uw;  //window refresh } getpts 2; //use data reader to select two points

Das Skript kann vom Skriptfenster aus ausgeführt oder in einer OGS-Datei gespeichert und dann mit einer Symbolleistenschaltfläche verbunden werden.

Hinweis: Das Skript verwendet einen Datensatz als eine Funktion, um den entsprechenden Y-Wert für einen gegebenen X-Wert zu finden. Gibt es duplizierte X-Werte, ist der wiedergegebene Wert der Y-Wert für den ersten gefundenen X-Wert.

Schlüsselwörter:LabTalk, Lineare Kurvenanpassung