Von Matlab in Tikz in Latex

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Von Matlab in Tikz in Latex

von greeco-k » Di 14. Apr 2015, 21:53

ah jetzt hab ich es verstanden! =)

Mache denke ich aber lieber die gesamte formatierung der Grafik in Matlab und passe dann Höhe und Breite händisch an, bevor ich mich jetzt in pgfplots reinfuchse...

von Johannes_B » Di 14. Apr 2015, 15:01

Das hast du doch vorhin mit der Begründung verworfen, nicht die Schriftart dines Dokumentes zu haben.

Du sollst deine Messwerte in eine Datei exportieren, und diese Datei von pgfplots darstellen lassen.

von greeco-k » Di 14. Apr 2015, 14:42

Ah ok ja das klingt besser.

Ich soll also die Matlab figure speichern und diese dann in mein Latex dokument einbinden? Als was soll ich speichern? eps? Und wie binde ich dann ein?

Besten Dank schonmal!

von Johannes_B » Di 14. Apr 2015, 13:53

Doch schon, allerdings wird der Code von einem Script generiert, was für dich Nachbearbeitung bedeutet.
Ändern sich deine Werte in Matlabl, musst du das Skript neu aufrufen, neu nachbearbeiten.

Exportierst du stattdessen die Werte nackisch, und lässt diese durch pgfplots darstellen (Übergabe des Dateinamen), musst du bei eventuellen Änderungen nur noch aus Matlab exportieren. Damit bleibt auch der LaTeX-Code übersichtlicher, da du dir Dinge wie das Setzen der Schriftfarbe auf schwarz meist sparen kannst.

von greeco-k » Di 14. Apr 2015, 13:42

bademaister hat geschrieben:Moin,

könntest du nicht einfach deinen Plot aus Matlab in eine PDF/EPS-Datei plotten und diese dann in Latex einbinden?

Beim Plotten kannst du dann auch schon eine gewünschte Breite angeben, was dann das Skalieren in Latex eventuell überflüssig macht.



Grüße

Paul
Dann hätte ich aber nicht die Latex Schrift und könnte keine Formeln usw. verwenden... oder?

@Johannes:
Aber mache ich das nicht? Siehe ersten Post?

Grüße

von Johannes_B » Mo 13. Apr 2015, 18:01

Oder Werte in eine Textdatei schreiben und mit pgfplots plotten.

von bademaister » Mo 13. Apr 2015, 17:34

Moin,

könntest du nicht einfach deinen Plot aus Matlab in eine PDF/EPS-Datei plotten und diese dann in Latex einbinden?

Beim Plotten kannst du dann auch schon eine gewünschte Breite angeben, was dann das Skalieren in Latex eventuell überflüssig macht.



Grüße

Paul

Von Matlab in Tikz in Latex

von greeco-k » Mo 13. Apr 2015, 11:36

Hallo zusammen,

ich habe in Matlab einen Grafik die ich gerne in mein Latex Dokument aufnehmen würde. Bisher habe ich folgende Lösung gefunden. Auf der Matlab Seite gibt es ein Skript (Matlab2tikz), welches eine geöffnete figure in Matlab in tikz grafik übersetzt. Das Skript spukt dann soetwas aus:
\begin{tikzpicture}

\begin{axis}[%
width=0.4\linewidth, %G-K: Hier habe ich von Hand nachgebessert!
height=3.87974in,
at={(1.742812in,0.523646in)},
scale only axis,
separate axis lines,
every outer x axis line/.append style={black},
every x tick label/.append style={font=\color{black}},
xmin=0,
xmax=5,
xmajorgrids,
every outer y axis line/.append style={black},
every y tick label/.append style={font=\color{black}},
ymin=0,
ymax=6.5,
ymajorgrids
]
\addplot [color=blue,solid,forget plot]
  table[row sep=crcr]{%
0	2.5\\
0.01	2.5075\\
0.03	2.5225\\
0.07	2.5525\\
0.15	2.6125\\
0.31	2.7325\\
0.63	2.9725\\
1.27	3.4525\\
2.55	4.4125\\
5	6.25\\
};
\end{axis}
\end{tikzpicture}%
Das ganze binde ich dann folgendermaßen in mein Latex Dokument ein:
\documentclass[a4paper,12pt]{scrreprt}
\usepackage[left= 2.5cm,right = 2cm, bottom = 4 cm]{geometry}
\usepackage[demo]{graphicx}
\usepackage{graphicx, subfigure}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{float}

\usepackage{pgfplots}


\begin{document}
 Hier steht ein Beispieltext! =)

\begin{figure}[htbp]
  \centering
\begin{minipage}{0.8\textwidth}
  \centering
    \input{Abbildungen/Test_Grafik.tex}
    \input{Abbildungen/Test_Grafik.tex}
      \caption[]{Das ist eine schöne Vektorgrafik\footcite[45]{MeineQuelle}}
    \label{abb:}
\end{minipage}
\end{figure}

\end{document}
Wenn jetzt die Grafik sehr breit ist, wird diese nicht in der Minipage gehalten, sondern geht bis über den Seitenrand hinaus. Ich habe jetzt, wie oben angedeutet, immer per Hand die Breite der Abbildung editiert. Ich denke das liegt am input Befehl. Kenne mich da aber nicht so aus.

Gibt es noch eine bessere/schönere/stabilere Lösung Matlabgrafiken einzubinden?

Wie immer vielen Dank schonmal!

Nach oben