Plotten einer linearen Funktion mit Vorgabe von 2 Punkten

Tabellen und Grafiken erstellen und anordnen


Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Plotten einer linearen Funktion mit Vorgabe von 2 Punkten

Beitrag von Patrick1990 »

Hallo, ich habe 2 Funktionswerte und möchte daraus eine U-I-Kennlinie erstellen, jedoch bin ich bisher nicht fündig geworden wie ich soetwas anstelle.

Ein Bild, wie es aussehen sollte ist hier zu finden:
http://s14.directupload.net/images/130415/vfq63otw.jpg

Hier ist ein Beispiel, welches ich erstellt habe, jedoch nicht so zufriedenstellend ist.
\documentclass{minimal}

\usepackage{tikz}
\usepackage{pgfplots}
%\usetikzlibrary{trees,snakes}
\begin{document}
\begin{tikzpicture}
\begin{axis}[ xlabel=U in $V$,ylabel=I in $\mu A$] 
\addplot[color=red,mark=x] coordinates {
(10,0) 
(5.6,44) 
(7.5,25)
(0,100) 
};
\end{axis} 
\end{tikzpicture}

\end{document}

Benutzeravatar
localghost
Forum-Meister
Forum-Meister
Beiträge: 826
Registriert: Di 8. Jul 2008, 15:40
Wohnort: Braunschweig

Etwas fehlt

Beitrag von localghost »

Vielleicht solltest Du das Problem nochmal etwas genauer darstellen, denn aus dem Beispiel geht es nicht so recht hervor.

Besteht das Problem vielleicht darin, aus diesen zwei Punkten eine (lineare) Funktion zu erzeugen, die dann über einen gewissen Definitionsbereich gezeichnet werden soll? Ist also eine lineare Regression erwünscht?


Thorsten
TeX und LaTeX, Fragen und Antworten – TeXwelt

¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: TeX Live 2024, TeXworks

Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Beitrag von Patrick1990 »

Die lineare Funktion habe ich bereits bestimmt...in meinem Beispielfoto ist es y=f(x)=-1/10x+10.


Es soll so aussehen wie auf dem Beispielfoto, das Minimalbeispiel war nur eine Spielerei von mir.

Ich kann es noch einmal deuten:

Ich habe die Funktion, welche ca. von -10<=x<=110 (Mikroampere) gezeichnet werden soll ein normales x-y-Koordinatensystem.

Wichtig ist, das man sie Schnittpunkte mit der x- und y-Achse erkennt UND (falls dies möglich ist) auch ein Anstiegsdreieck unter der Funktionslinie, damit man sieht, dass dieser -1/10 ist.

Benutzeravatar
localghost
Forum-Meister
Forum-Meister
Beiträge: 826
Registriert: Di 8. Jul 2008, 15:40
Wohnort: Braunschweig

Ansatz

Beitrag von localghost »

Nehmen wir nochmal dein Beispiel. Damit kann man die Vorgehensweise ja auch demonstrieren.

Die Funktion muss man nicht selbst bestimmen. Das kann Gnuplot als Back-End für pgfplots erledigen. Um die Schnittpunkte mit den Achsen zu sehen, müssen diese entsprechend konfiguriert werden (siehe Code). Das Dreieck für die Steigung lässt sich recht einfach im Koordinatensystem der Achsen (axis cs) zeichnen.
\documentclass[
  11pt,
  border=2pt
]{standalone}
\usepackage[T1]{fontenc}
\usepackage{pgfplots,pgfplotstable}
\usepackage[locale=DE]{siunitx}
\usepackage{textcomp}

\usepackage{filecontents}
\begin{filecontents*}{kennlinie.dat}
U I
5.6 44
7.5 25
\end{filecontents*}

\pgfplotsset{
  compat=newest,
  xlabel near ticks,
  ylabel near ticks
}

\begin{document}
  \begin{tikzpicture}
    \begin{axis}[
      axis lines=middle,
      xmin=-2,
      xmax=12,
      xlabel={U / \si{\volt}},
      ylabel={I / \si{\micro\ampere}}
    ]
      \addplot[color=red,only marks,mark=x] table {kennlinie.dat};
      \addplot[raw gnuplot,smooth,dashed] gnuplot {
        f(x)=a*x+b;
        fit f(x) 'kennlinie.dat' using 1:2 via a,b;
        plot [x=-2:12] f(x);
      };
      \draw (axis cs:5.6,44) |- (axis cs:7.5,25);
    \end{axis}
  \end{tikzpicture}
\end{document}
Um die Funktion zu bestimmen, wurden die Daten mittels filecontents in eine externe Datei ausgelagert.

Deine Wunschkonfiguration müsstest Du selbst erledigen. Die Einstellungen sollten sich aber auf den eigentlichen Fall übertragen lassen. Das lässt sich alles in den Anleitungen nachlesen. Natürlich kannst Du auch weitere Fragen stellen.
TeX und LaTeX, Fragen und Antworten – TeXwelt

¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
² System: TeX Live 2024, TeXworks

Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Beitrag von Patrick1990 »

Danke, ich bekomme folgende Fehlermeldung:


! Package pgfplots Error: Sorry, the gnuplot-result file 'Namenlos-1.pgf-plot.t
able' could not be found. Maybe you need to enable the shell-escape feature? Fo
r pdflatex, this is '>> pdflatex -shell-escape'. You can also invoke '>> gnuplo
t <file>.gnuplot' manually on the respective gnuplot file..

Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Beitrag von Patrick1990 »

was kann ich nun tun?

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Du musst pdflatex mit der Option shell-escape bzw. enable-write18 aufrufen, geht über die Kommandozeile; oder du änderst die Einstellungen deines Editors.
Nun muss bloss noch Gnuplot installiert sein und der Ort dem System bekannt (Umgebungsvariable).

Viel Erfolg
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Beitrag von Patrick1990 »

Also so richtig Ahnung habe ich davon nicht, GNUplot ist installiert und funktioniert, und ich habe im editor
>> pdflatex -shell-escape
eingegeben und dann kam dieses enable-write18

aber was ist das jetzt noch mit dem ort?

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Gib mal auf der Kommandozeile gnuplot ein, wenn gnuplot gestartet wird, kennt dein System den Ort des Programms.

Orientiere dich daran, wie der Programmaufruf in den Einstellungen des Editors momentan aussieht, und ergänze einfach die Option. Einfach mal ausprobieren, klingt nur schwer, isses aber nich.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Patrick1990
Forum-Century
Forum-Century
Beiträge: 213
Registriert: Mo 18. Feb 2013, 07:56
Wohnort: Ilmenau

Beitrag von Patrick1990 »

Ich benutze TeXworks für Mac zur Zeit und ich sehe da nichts in den editoreinstellungen, was etwas mit programmaufruf zu tun hat :(

gnuplot startet, wenn ich es im terminal eingebe

Antworten