Page 1 sur 1

Histogramme avec Gnuplot

MessagePosté: Samedi 14 Juillet 2007, 20:26
par D.GH
Bonjour,

Voici un code pour faire des histogrammes avec des commandes Gnuplot dans un document Latex.
Code: Tout sélectionner
% Compiler avec l'option --shell-escape
% pour MikTeX   : latex -enable-write18
\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[francais]{babel}
\usepackage{graphics} % pour l'insertion d'une image
\usepackage{pstricks}
\usepackage{filecontents}
\usepackage{moreverb}

%Appel à Gnuplot

\makeatletter
% #1 fichier contenant les commandes en Gnuplot
\newcommand{\ExecuteGnuplot}[1]{
\immediate\write18{@echo off}
\immediate\write18{C:/gnuplot/bin/wgnuplot.exe #1} }
\makeatother
%  répertoire de  wgnuplot.exe   : C:\gnuplot\bin
%%%%%%%%%%%%%
% fichier des données
\begin{filecontents*}{donnes.dat}
-2.3999    0.0660
-1.9111    0.1179
-1.4224    0.3632
-0.9337    0.6462
-0.4450    0.8019
0.0437    1.0000
0.5324    0.8113
1.0211    0.5094
1.5099    0.2783
1.9986    0.0896
2.4873    0.0283
\end{filecontents*}
%%%%%%%%%%%%%
\begin{document}

% Les  commandes gnuplot dans le fichier fich.gnu

\begin{verbatimwrite}{fich.gnu}
set colorbox
set style fill solid .2 border -1
set xrange [-3:3]
set yrange [0:1]
plot 'donnes.dat' using 1:2 title '' with boxes
# pour avoir la figure en format eps
set term postscript eps color
set out 'fich1.eps'
set size 0.7, 0.7
replot
exit
\end{verbatimwrite}

\ExecuteGnuplot{fich.gnu}

\noindent L'histogramme des donn\'ees :

% pour inclure  l'image crée par Gnuplot  dans le document

\includegraphics{fich1.eps}

\end{document}


D.GH

Re: Histogramme avec Gnuplot

MessagePosté: Lundi 16 Juillet 2007, 09:39
par D.GH
Pour ceux qui préfèrent travailler avec 'PdfLaTeX' et avoir des images en format 'pdf', Voici un code qui fait le même travail que le module 'epstopdf'.

Code: Tout sélectionner
% compilation  pdflatex -shell-escape doc.tex
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[francais]{babel}
\usepackage[pdftex]{graphicx}
\usepackage{filecontents}
\usepackage{moreverb}

%Appel à Gnuplot
\makeatletter
% #1 fichier contenant les commandes en Gnuplot
\newcommand{\ExecuteGnuplot}[1]{
\immediate\write18{@echo off}
\immediate\write18{C:/gnuplot/bin/wgnuplot.exe #1} }
\makeatother
%  répertoire de  wgnuplot.exe   : C:\gnuplot\bin
%%%%%%%%%%%%%
% fichier des données
\begin{filecontents*}{donnes.dat}
-2.6401    0.0203
-2.1378    0.1115
-1.6355    0.2170
-1.1331    0.2727
-0.6308    0.3223
-0.1284    1.0000
0.3739    0.5851
0.8762    0.1855
1.3786    0.0647
1.8809    0.0276
2.3832    0.0076
\end{filecontents*}
%%%%%%%%%%%%%
\begin{document}

% Les  commandes gnuplot dans le fichier fich.gnu

\begin{verbatimwrite}{fich.gnu}
set colorbox
set style fill solid 0.15 border -1
# set style fill pattern 1 border -1
set xrange [-3:3]
set yrange [0:1]
plot 'donnes.dat' using 1:2 title '' with boxes
# image en format eps
set term postscript eps color
set out 'fich1.eps'
set size 0.7, 0.7
replot
exit
\end{verbatimwrite}

\ExecuteGnuplot{fich.gnu}

%convertion eps->pdf
\immediate\write18{C:/texmf/miktex/bin/ps2pdf.exe -dEPSCrop fich1.eps fich1.pdf}

\noindent L'histogramme des donn\'ees :

% pour inclure  l'image crée par Gnuplot  dans le document

\includegraphics{fich1.pdf}

\end{document}


D.GH
http://www.cnam.fr/maths/Membres/ghorbanzadeh/