Bonjour,
Actuellement, je suis occupé à écrire mon TFE (ou mémoire, si vous préférez). J'ai toujours utilisé matlab pour faire mes figures (en passant par le format pdf) que j'insérais dans mes rapports réalisés à l'aide de latex.
Désormais, pour gagner du temps (on ne doit pas réfléchir à la taille des marges à découper autour de l'image) et de la "beauté" de l'image, je souhaiterais utiliser la commande matlab2tikz.
Je l'utilise comme suit (par exemple)
À ce moment là, j'obtiens un fichier .tex. Par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 matlab2tikz('madirection/monimage.tex')
Comme vous le voyez, les xlabel et ylabel sont assez mal compris par matlab2tikz.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 % This file was created by matlab2tikz v0.1.4. % Copyright (c) 2008--2011, Nico Schlömer <nico.schloemer@gmail.com> % All rights reserved. % % The latest updates can be retrieved from % http://www.mathworks.com/matlabcentral/fileexchange/22022-matlab2tikz % where you can also make suggestions and rate matlab2tikz. % \begin{tikzpicture} \begin{axis}[% scale only axis, width=0.3\textwidth, height=0.3\textwidth, xmin=-18.1694, xmax=18.1694, ymin=-0.1, ymax=1.1, xlabel={$\o\text{verline}{x}\text{ [}-\text{]}$}, ylabel={$\o\text{verline}{T}\text{ [}-\text{]}$}, axis on top] \addplot [ color=black, dotted, line width=1.0pt ] coordinates{ (-18.1694,0)(0,0)(0,1)(18.1694,1) }; \end{axis} \end{tikzpicture}
Dès lors, pour résoudre mon problème, j'ai penser effectuer une transformation du .tex par matlab. En effet (dans mon cas au moins) les lignes problématiques sont toujours les lignes 17 et 18.
Je voudrais donc pouvoir remplacer ces lignes 17 et 18 sans pour autant modifier le reste du .tex.
J'ai donc essayé quelque chose comme
Le 'A' a la forme voulue. Je suppose que c'est donc que j'utilise mal fwrite, mais je ne vois pas comment faire autrement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 fclose all fid = fopen('Figure.tex','r+'); for i=1:16 A = fgetl(fid); end A=strrep(A,'$\o\text{verline}{x}\text{ [}-\text{]}$',... '$\overline{x}\,[-]$'); fwrite(fid,A) fclose(fid)
Merci pour votre attention et bonne après-midi!
Partager