Je réalise des courbes en important les valeurs depuis un document .txt créé avec le bloc-notes de Windows. Mais j'aimerais ajouter d'autres courbes sur le même graphique, et je ne sais pas comment faire. Importer plusieurs fichiers dans l'environnement ? Réaliser un fichier avec les différentes valeurs et selectionner ? Voici l'environnement utilisé pour réaliser mes courbes :

Ouvrir dans l'éditeur Overleaf
\subfloat[\textbf{(20)}]{
        \begin{tikzpicture}[scale=0.75]
        \begin{semilogxaxis}[
        xlabel=concentration (g.L$^{-1}$),
        ylabel=tension de surface (mN.m$^{-1}$),
        grid=major
        ]
        \addplot+[mark=none,smooth] table {tableaux/cmcbetamono.txt};
        \end{semilogxaxis}
        \end{tikzpicture}
    }

Posée 18 Sep '17, 15:14

Aur%C3%A9lienCocq's gravatar image

AurélienCocq
1.2k115566
Taux d'acceptation : 26%

Modifiée 19 Sep '17, 00:51

Pathe's gravatar image

Pathe ♦♦
7.5k42203251

Dans un environnement axis ou, comme ici, semilogxaxis, on peut utiliser autant de \addplot que souhaité.

(18 Sep '17, 16:49) denis ♦♦ denis's gravatar image

Au passage, pour les unités, je préconise ardemment le recours au package siunitx.

(18 Sep '17, 16:51) denis ♦♦ denis's gravatar image

Merci pour la reponse, oui le package siunitx est déja chargé

(18 Sep '17, 16:54) AurélienCocq Aur%C3%A9lienCocq's gravatar image

@AurélienCocq Du coup, mieux vaut noter l'unité de concentration \si{\gram\per\liter} et l'unité de tension de surface \si{\milli\newton\per\meter} (d'ailleurs, cette dernière ne serait-elle pas \si{\milli\newton\per\meter\squared} ?).

(18 Sep '17, 17:02) denis ♦♦ denis's gravatar image
1

Ne pas oublier les abréviations pour alléger le code: \si{\mN\per\m}.

(19 Sep '17, 03:25) Bernard Bernard's gravatar image

@Bernard En effet. Je préconiserais même le recours à de nouvelles unités, \DeclareSIUnit{\cct}{\g\per\L} et \DeclareSIUnit{\tsf}{\mN\per\m}, utilisables ensuite par exemple ainsi : \si{\cct} et \si{\tsf}.

(19 Sep '17, 10:06) denis ♦♦ denis's gravatar image
Affichage de 5 parmi 6 Afficher 1 commentaire(s) en plus

1 On peut utiliser plusieurs fichiers pour importer les données

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat = 1.15}
\begin{filecontents}{mtfilefoo.txt}
1     1  
2     2   
3     3 
\end{filecontents}

\begin{filecontents}{mtfilebar.txt} 
1     1     
2     0     
3     1     
\end{filecontents}

\begin{document}

\begin{tikzpicture}[scale=0.75]
\begin{axis}[
    xlabel=concentration (g.L$^{-1}$),
    ylabel=tension de surface (mN.m$^{-1}$),
    grid=major
    ]
    \addplot+[mark=none,smooth] table {mtfilefoo.txt};
    \addplot+[mark=none,smooth] table {mtfilebar.txt};
\end{axis}
\end{tikzpicture}
\end{document}

2 Comme on peut utiliser un seul fichier en spécifiant les colonnes

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat = 1.15}
\begin{filecontents}{mtfile.txt}
x   f(x)  g(x)   h(x)
1     1      0       2
2     2      1       1
3     3      0       2
\end{filecontents}

\begin{document}
\begin{tikzpicture}[scale=0.75]
\begin{axis}[
    xlabel=concentration (g.L$^{-1}$),
    ylabel=tension de surface (mN.m$^{-1}$),
    grid=major
    ]
    \addplot+[mark=none,smooth] table [x=x, y=f(x)] {mtfile.txt};
    \addplot+[mark=none,smooth] table [x=x, y=g(x)] {mtfile.txt};
    \addplot+[mark=none,smooth] table [x=x, y=h(x)] {mtfile.txt};
\end{axis}
\end{tikzpicture}
\end{document}
Lien permanent

Publiée 07 Oct '17, 12:40

touhami's gravatar image

touhami
9.7k410
Taux d'acceptation : 51%

Modifiée 07 Oct '17, 14:27

Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.