3

I am trying to make a bar chart using LaTeX. I've been unsuccessful so far, so can anyone help me out, perhaps with a copy of a recent project? How can I make a bar chart with pstricks? I would appreciate the most simple solution possible because I just got started with TeX recently.

Like mentioned here in the official document

This is what I have so far:

\psset{unit=0.5in}%
\begin{pspicture}(0,-0.5)(3,3)%
\readpsbardata{\data}{example1.csv}%
\psbarchart[barstyle={red,blue}]{\data}%
\end{pspicture}
Syncrossus
  • 570
  • 3
  • 17
Sven Koluem
  • 687
  • 1
  • 13
  • 31

2 Answers2

9

I highly recommend using the magical combination of PGF, TiKZ and PGFPlots. These tools are generally accepted as the replacements to pstricks. They are compatible with pdflatex and many other tools that give pstricks trouble.

This following highly semantic TeX-source

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.4} 

\begin{document}

\begin{tikzpicture}

\begin{axis}[%
scale only axis,
width=5in,
height=4in,
xmin=-3, xmax=3,
ymin=0, ymax=1,
axis on top]
\addplot[
  ybar,
  bar width=0.102874in, 
  bar shift=0in,
  fill=red,
  draw=black] 
  plot coordinates{ 
    (-2.9,0.00022263) (-2.7,0.000682328) (-2.5,0.00193045) (-2.3,0.00504176)
    (-2.1,0.0121552) (-1.9,0.0270518) (-1.7,0.0555762) (-1.5,0.105399)
    (-1.3,0.18452) (-1.1,0.298197) (-0.9,0.444858) (-0.7,0.612626)
    (-0.5,0.778801) (-0.3,0.913931) (-0.1,0.99005) (0.1,0.99005)
    (0.3,0.913931) (0.5,0.778801) (0.7,0.612626) (0.9,0.444858) 
    (1.1,0.298197) (1.3,0.18452) (1.5,0.105399) (1.7,0.0555762)
    (1.9,0.0270518) (2.1,0.0121552) (2.3,0.00504176) (2.5,0.00193045)
    (2.7,0.000682328) (2.9,0.00022263)
  };

\end{axis}
\end{tikzpicture}

\end{document}

Yields

Bar graph example

mbauman
  • 30,958
  • 4
  • 88
  • 123
1

You have to use pst-bar package and pstricks package.

\documentclass[12pt]{article}
\usepackage{pstricks}
\usepackage{pst-bar}
\usepackage{pstricks-add}
\usepackage{filecontents}

\begin{document}

\begin{filecontents*}{example1.csv}
Sun, Mon, Tue, Wed, Thu, Fri, Sat
1700, 1690, 1600, 1800, 1750, 1210, 1200
\end{filecontents*}

\psset{xunit=0.5in,yunit=0.0015in}
\begin{pspicture}(0,0)(8,2000)
\psframe[fillstyle=solid,fillcolor=black!10,linestyle=solid](0,0)
(8,2000)
\psaxes[yticksize=0 8,ticks=y,labels=y,Dx=1,Dy=500](0,0)
(0,0)(8,2000)
\readpsbardata[header=true]{\data}{example1.csv}
\psbarchart[barstyle=blue]{\data}
\end{pspicture}

\end{document}
yanto
  • 136
  • 1
  • 2