J'aimerais pouvoir reproduire le graphique fourni en pièce jointe. Je réalise mon graphe en important mes valeurs depuis un document Voici l'environnement utilisé pour réaliser la courbe : Ouvrir dans l'éditeur Overleaf
\begin{figure}[ht] \centering { \begin{tikzpicture} \begin{axis}[ xlabel=Temps (min), ylabel=Pourcentage molaire, grid=major,width=12cm, height=7cm] \addplot+[ybar] (Run1,0)(2h,60)(4h,100); \end{axis} \end{tikzpicture}} \caption{Conversion} \label{cinetalcene} \end{figure} Posée 28 Sep '17, 15:41 AurélienCocq Pathe ♦♦
Affichage de 5 parmi 11
Afficher 6 commentaire(s) en plus
|
Une solution qui semble fonctionner avec les coordonnées symboliques.
Les Ouvrir dans l'éditeur Overleaf
\documentclass{minimal} \usepackage{tikz} \usepackage{pgfplots} \pgfplotsset{compat=1.14} \begin{document} \begin{tikzpicture} \begin{axis}[ ybar, width=12cm, height=7cm, xlabel={Temps (min)}, ylabel={Pourcentage molaire}, symbolic x coords={ Run1, \phantom{1}2h, \phantom{1}4h, Run2, \phantom{2}2h, \phantom{2}4h }, xtick=data, ] \addplot+ coordinates { (Run1, 0) (\phantom{1}2h, 60) (\phantom{1}4h, 100) (Run2, 0) (\phantom{2}2h, 50) (\phantom{2}4h, 80) }; \end{axis} \end{tikzpicture} \end{document} Publiée 17 Nov '18, 04:26 NeferTiyi @NeferTiyi : votre code ne compile pas en ligne. Utilisez-vous une librairie TikZ particulière ?
(17 Nov '18, 12:31)
Pathe ♦♦
1
Ah mince ! Je me suis faite avoir aussi avec le code proposé dans la question : le préambule produit par Overleaf n'est pas complet, il faut y ajouter
(17 Nov '18, 13:30)
NeferTiyi
|
@AurélienCocq Merci d'essayer de fournir un ECM et un exemple des valeurs utilisées.
En fait c'est celui qui est en piece jointe que j 'essaye de reproduire mais je me confronte à des erreurs du fait qu'il y'a autre chose que des chiffres dans les coordonnées.
Dans ce cas, ne faut-il pas nettoyer les donner avant que de faire intervenir LaTeX ?
Malheureusement comme dans le graphe présenté dans la question je n 'ai pas la possibilité de nettoyer les données...
Sans disposer de tous les éléments, il nous sera malheureusement difficile de vous aider...
Le soucis est qu'en utilisant les valeurs (1,0)(2,60)(3,100)(4,0) cela est possible mais comme montré dans l'image dans la question, je dois ajouter les termes "run" et "heures" ou "h" dans les coordonées et cela pose problème mais je ne sais quoi faire
Utiliser des expressions régulières ? Un script sed, parfois agrémenté d'une pincée d'AWK, est bien souvent efficace.
Malheureusement ces données sont importantes pour l'analyse que j'effectue, sans cela c'est beaucoup plus difficile à comprendre...
Est-ce que je comprends bien : vous essayez de compiler certaines données incluses dans le document, mais pas d'autres, c'est ça ?
Quand je compile avec des coordonnées normales(0,1)(1,2)... je peux réaliser le graphe mais il me manque des information pour qu'il soit la copie de l'image sauf que si je passe à (Run1,0)(2h,2)... il y'a une erreur de compilation à cause de ces valeurs
Pour utiliser des coordonnées de type
(Run1,0)(2h,2)
il faut ajouter l'optionsymbolic x coords={run1,2h,4h}
mais je ne sais pas comment l'adapter à votre exemple (je vais essayer de voir).Pour contourner le problème, vous pouvez utiliser des coordonnées normales, avec l'option
xticklabels={,,run1,2h,4h,run2,2h,4h},