Je dois traiter des colonnes de nombres qui sont dans un fichier .csv pour tracer un graphique avec l'instruction \draw plot file {fichier.txt};.

Je les exporte d'abord dans un fichier word sauvegardé en .txt.

Malheureusement, quand j'ouvre le fichier avec Bloc-notes, les données ne sont pas dans deux colonnes mais dans une seule colonne (autrement dit : un nombre par ligne).

Comment faire pour que sur chaque ligne, il y ait deux nombres (l'abscisse et l'ordonnée) ?

Je pose aussi une question plus large : comment faites-vous pour passer des données initialement dans le format .csv dans un format acceptable pour la commande \draw plot file {fichier.txt}; ?

Mise à jour

Suite aux réponse et commentaires de samcarter, voici un extrait de mon fichier :

Ouvrir dans l'éditeur Overleaf
\documentclass[10pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper,margin=8mm]{geometry}
\usepackage{lmodern}
\usepackage[french]{babel}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{graphicx, color, picins}
\DeclareGraphicsExtensions{.jpg,.pdf,.png}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{siunitx}

\usepackage{setspace}
\usepackage{gensymb}
\usepackage{mathrsfs}
\usepackage{chemfig}
\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}
\addplot table [x=ml,y=Scm,col sep=semicolon]{fichier.csv};
\end{axis}
\end{tikzpicture}

\end{document}

qui génère une erreur que je ne comprends pas :

Extrait du log : (c:/texlive/2018/texmf-dist/tex/latex/lm/ot1lmtt.fd File: ot1lmtt.fd 2009/10/30 v1.6 Font defs for Latin Modern ) PGFPlots: reading {fichier.csv}

! Undefined control sequence. GenericError ...
#4 errhelp @err@ ... l.28 ...y=Scm, col sep = semicolon] {fichier.csv}; ^^M The control sequence at the end of the top line of your error message was never def'ed. If you have misspelled it (e.g., \hobx'), typeI' and the correct spelling (e.g., `Ihbox'). Otherwise just continue, and I'll forget about whatever was undefined.

Posée 13 Fév '19, 16:09

cbreton's gravatar image

cbreton
75733348
Taux d'acceptation : 9%

Modifiée 22 Fév '19, 04:27

Pathe's gravatar image

Pathe ♦♦
7.4k29197245

1

Pouvez vous nous montre une ligne de votre fichier .csv?

(13 Fév '19, 16:52) samcarter samcarter's gravatar image
1

Comme le dit samcarter, le détour par le fichier .txt est inutile. J'ai commis ici un cours sur le sujet (mais via pgfplots et non TikZ).

(13 Fév '19, 17:23) denis ♦♦ denis's gravatar image

@samcarter Voici les deux premières lignes : ml;µS/cm;sec;dµS/cm/dml;°C;µS/cm (2);°C (2) 0.000;266.158;3.997000;102.000000;22.8;266.158;22.8

Je suppose que comma correspond à virgule...

(13 Fév '19, 18:22) cbreton cbreton's gravatar image
2

@cbreton Merci ! J'ai modifié ma réponse avec des ; (les symboles spéciaux, comme µ, ne fonctionnent pas)

(13 Fév '19, 18:37) samcarter samcarter's gravatar image

Le détour par le fichier .txt est inutile. Vous pouvez directement utiliser un fichier .csv :

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{pgfplots}

\usepackage{filecontents}
\begin{filecontents*}{fichier.csv}
ml;muScm;sec;dmuScmdml;C;muScm2;C2 
0.000;266.158;3.997000;102.000000;22.8;266.158;22.8
1.000;366.158;4.997000;502.000000;32.8;366.158;32.8
\end{filecontents*}

\begin{document}
\begin{tikzpicture}
\begin{axis}[%
    mark size=5pt,
    width=.9\textwidth,
]
\addplot table [x=ml, y=muScm, col sep=semicolon] {fichier.csv};
\end{axis}
\end{tikzpicture}
\end{document}

(\begin{filecontents*}...\end{filecontents*} est utilisé seulement pour cet exemple, vous n'en avez pas besoin pour votre document.)

Lien permanent

Publiée 13 Fév '19, 16:49

samcarter's gravatar image

samcarter
8.2k2817
Taux d'acceptation : 57%

Modifiée 13 Fév '19, 20:15

2

@denis Merci beaucoup pour vos corrections !

(13 Fév '19, 17:29) samcarter samcarter's gravatar image

Je ne comprends pas où est l'erreur (cf. mise à jour de ma question)...

(13 Fév '19, 19:14) cbreton cbreton's gravatar image

copie des deux premières lignes du fichier "fichier.csv" ml;Scm;sec;dµS/cm/dml;°C;µS/cm (2);°C (2) 0.000;266.158;3.997000;102.000000;22.8;266.158;22.8

(13 Fév '19, 19:16) cbreton cbreton's gravatar image
1

Ça ne marche pas avec des symboles spéciaux. Essayez avec ml;Scm;sec;dmuScmdml;C;muScm2;C2 (pas de µ, \, ° et ())

(13 Fév '19, 19:22) samcarter samcarter's gravatar image

OK. J'obtiens le graphique. Maintenant, j'ai deux questions annexe : 1. comment faire varier la taille des points (je voudrais des points plus petits)? 2. Comment augmenter la taille du graphique ?

(13 Fév '19, 19:50) cbreton cbreton's gravatar image
1

@cbreton Regardez ma réponse modifiée

(13 Fév '19, 20:16) samcarter samcarter's gravatar image

OK. Thanks. Où puis-je trouver de la documentation sur comment améliorer un graphique tracé avec tikzpicture ? J'ai "Tikz pour l'impatient" de Tisseau et Duma, mais je ne trouve rien...

(13 Fév '19, 20:24) cbreton cbreton's gravatar image
1

@cbreton Le deuxième commentaire au-dessous de votre question a un lien avec un cours sur pgfplots. Le documentation de l'extension c'est trouve ici: http://texdoc.net/texmf-dist/doc/latex/pgfplots/pgfplots.pdf

(13 Fév '19, 20:33) samcarter samcarter's gravatar image
1

@cbreton Il y a aussi http://mirrors.ctan.org/info/visualtikz/VisualTikZ-fr.pdf avec le chapitre "23 Créer un graphe avec pgfplot"

(13 Fév '19, 20:35) samcarter samcarter's gravatar image
1

@cbreton Plutôt que poser une question en commentaire, il est préférable de créer une nouvelle question à part entière (éventuellement en y indiquant le lien avec la question actuelle).

(13 Fév '19, 21:30) denis ♦♦ denis's gravatar image
1

@cbreton Il est préférable de ne poser qu'une question à la fois mais votre contribution en comporte plusieurs : merci de la modifier pour que n'y figure qu'une question et de poser chacune des autres dans des contributions indépendantes.

(13 Fév '19, 21:30) denis ♦♦ denis's gravatar image
1

@cbreton Attention ! Votre réponse n'est pas une solution et ne doit donc pas apparaître comme réponse. Si vous estimez nécessaire d'apporter des précisions à votre question initiale, il est préférable de la modifier (éventuellement en signalant clairement la mise à jour que vous opérez). J'ai pris la liberté de modifier ainsi vos contributions et notamment votre réponse, qui était un commentaire plutôt qu'une réponse et a de ce fait été convertie comme tel.

(13 Fév '19, 21:35) denis ♦♦ denis's gravatar image
Affichage de 5 parmi 12 Afficher 7 commentaire(s) en plus
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.