goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

matlab2tikz - LineColor als Variable in .tikz-File schreiben

 

Trash_84
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 17.09.17
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 17.09.2017, 12:19     Titel: matlab2tikz - LineColor als Variable in .tikz-File schreiben
  Antworten mit Zitat      
Hallo alle zusammen,

für meine Abschlussarbeit möchte ich Plots die ich in Matlab erstelle mit matlab2tikz in LaTex einbinden. Grundsätlich funktioniert das auch, allerdings würde ich gern die Farben der verschiedenen Plotlinien einer Grafik als Variable in die *.tikz-Datei schreiben (in Matlab) um diese dann später in Latex global anpassen zu können.

Aktuell kann ich nur absolute Farbwerte in die *.tikz-Datei schreiben und müsste diese dann in jeder *.tikz-Datei manuell anpassen bzw. manuell in einen Variablennamen umschreiben, welchen ich dann in LaTex definieren kann.

Ich würde also gern zB. den Befehl \Farbe_U anstelle der absoluten Farbcodes in der erstellten *.tikz-Datei stehen haben...

Aktuell erstellt matlab2tikz folgende *.tikz-Datei (Ausschnitt)

Code • Öffne in Overleaf


title style     = {font = \Huge},
xlabel style  = {font = {\color{blue}\bfseries}},
ylabel style  = {font = \huge},
legend style = {font = \scshape},ticklabel style = {font = \color{red}}
]
\addplot [color=black!40!red, line width=2.0pt, forget plot]
  table[row sep=crcr]{%
-3.14159265358979   -2.44929359829471e-16\\
-3.1384510609362   -0.0062831956425897\\
-3.13530946828261   -0.0125664532972743\\
-3.13216787562902   -0.0188498349743102\\

 


Die Farbangabe "color=black!40!red" in \addplot hätte ich jetzt gern wie oben beschrieben, in Form der Variablen "\Farbe_U" angegeben. Diese Variable kann ich dann ebendfalls mit matlab2tikz mit der Option extraColors in der *.tikz-Datei definieren - bzw. eben global in meinem LaTex-Dokument.

Ich hoffe mein Anliegen ist verständlich und noch viel mehr würde ich mich freuen wenn mir vlt sogar jemand helfen könnte! Very Happy

Vielen Dank schonmal, falls ich etwas unklar beschrieben hab - gern nachfragen!

Grüße
Micha

(Diese Frage hatte ich auch schon in goMatlab gepostet, wo mir allerdings nicht weitergeolfen werden konnte)
Private Nachricht senden Benutzer-Profile anzeigen

esdd
Forum-Meister
Forum-Meister

Beiträge: 2216
Anmeldedatum: 07.02.10
Wohnort: Stutensee
Version: MiKTeX 2.9
     Beitrag Verfasst am: 17.09.2017, 13:19     Titel:
  Antworten mit Zitat      
Ich habe kein matlab und kenne mich mit matlab2tikz nicht aus. Wenn ich aber Use \providecolor (xcolor pkg) i.o. \definecolor (<- Link) richtig interpertiere, dann kannst Du eine rgb-Farbe Farbe_U (ohne Backslash) über extraColors definieren und verwenden. Diese Definition von Farbe_U kannst Du in Deiner TeX-Prämble dann mittels \definecolor noch "überschreiben".

Zuletzt bearbeitet von esdd am 17.09.2017, 14:05, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

Trash_84
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 17.09.17
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 17.09.2017, 13:28     Titel:
  Antworten mit Zitat      
Hey esdd

vielen Dank für deine Antwort - das eigentliche Problem was ich habe ist allerdings nicht die Definition von Farben allgemein, sondern die Möglichkeit den *.tikz-Code gleich mit einer Variablen anstatt einem rgb-Farbcode zu erzeugen, um dann nicht "händisch" die RGB-Farbcodes mit meinen Variablen in der erstellten *.tikz-Datei zu ersetzen. (Welche ich dann mit \definecolor in Tex definieren kann.)

Zugegebener Maßen ist das wohl so eine Mischung aus einem Matlab und einem Tex-Problem... Rolling Eyes
Private Nachricht senden Benutzer-Profile anzeigen

esdd
Forum-Meister
Forum-Meister

Beiträge: 2216
Anmeldedatum: 07.02.10
Wohnort: Stutensee
Version: MiKTeX 2.9
     Beitrag Verfasst am: 17.09.2017, 13:55     Titel:
  Antworten mit Zitat      
Du musst doch nur dafür sorgen, dass matlab in Deinen exportierten Code

Code • Öffne in Overleaf
\addplot[color=Farbe_U,....]{};


schreibt. Wie das geht, weiß ich natürlich nicht. Aber Du schaffst es ja auch color=black!40!red dahin zu bekommen. Wenn ich Deine und die Infos in dem Link richtig verstehe, brauchst Du für den Export dann nur noch einmalig Farbe_U über extraColors als eine beliebige rgb Farbe definieren. Diese sollte dann mit \providecolor{Farbe_U}... in die exportierte TeX-Datei geschrieben.

In Deinem LaTeX-Dokument kannst Du die Farbedefinition dann entweder so lassen, wie sie ist oder definierst vorher einmalig eine Farbe gleichen Namens. Der LaTeX-Befehl \providecolor{Farbe_U} wird nur ausgeführt, wenn noch keine Farbe gleichen Namens definiert ist. Wird also vor dem eingebundenen Code die Farbe bereits anders definiert, sollte die von mathlab exportierte Farbdefinition keine Wirkung mehr haben.

Zuletzt bearbeitet von esdd am 17.09.2017, 14:06, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

Trash_84
Forum-Newbie
Forum-Newbie

Beiträge: 3
Anmeldedatum: 17.09.17
Wohnort: Berlin
Version: ---
     Beitrag Verfasst am: 17.09.2017, 14:01     Titel:
  Antworten mit Zitat      
Ja genau - ich muss irgendwie dafür sorgen das matlab bei color die Variable reinschreibt...

Aber da fehlt mir echt das Know How wie ich das mache... Der Farbcode wird meiner Meinung nach irgendwie aus der in Matlab hinterlegten Farbe über das Skript matlab2tikz generiert. Wie ich da allerdings eine Variable reinbekomme ist mir nicht klar...
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2017 goLaTeX.de