rypiechart [options]


rypiechart is a tool for generating pie charts. Pie charts are a ubiquitous way to visualize proportional data.

A Caution

Before proceeding, this note from the Wikipedia page on pie charts (as of October 2012) is appropriate:

Statisticians generally regard pie charts as a poor method of displaying information, and they are uncommon in scientific literature. One reason is that it is more difficult for comparisons to be made between the size of items in a chart when area is used instead of length and when different items are shown as different shapes.

Further, in research performed at AT&T Bell Laboratories, it was shown that comparison by angle was less accurate than comparison by length....Most subjects have difficulty ordering the slices in [a] pie chart by size; when [a] bar chart is used the comparison is much easier. Similarly, comparisons between data sets are easier using the bar chart. However, if the goal is to compare a given category (a slice of the pie) with the total (the whole pie) in a single chart and the multiple is close to 25 or 50 percent, then a pie chart can often be more effective than a bar graph.

[T]he research of Spence and Lewandowsky did not find pie charts to be inferior. Participants were able to estimate values with pie charts just as well as with other presentation forms.

Alternatives to Pie Charts

The rytools suite provides the rycategories tool for visualizing data using a bar plot.


Every option available at the command line may be specified in a configuration file. For more information on the format of the configuration file, see ryrc(5).


--input-path <file>
Required. A file containing the input data. If --input-path is a hyphen (-), input will be read from standard input. The data should be in the format described in rydataformat(5).
--output-path <file>
Required. A file containing the output visualization. If the file does not exist, it will be created; if it does exist it will be overwritten. The extension of the file determines the output file format. Understood extensions are .png (PNG), .svg (SVG), .ps (PostScript) and .pdf (PDF).


--cat-input <colspec>
A column specification (see ryspecs(5)) of the data column containing the category of the observation. This will be used to label the observation in the chart.
--val-input <colspec>
A column specification (see ryspecs(5)) of the data column containing the observation values. This will determine the observation’s share of the pie.
--color-input <colspec>
A column specification (see ryspecs(5)) of the data column containing colors associated with this observation. This will determine the color of the share of the pie corresponding to this observation.


--width <num>
The width of the image, as a number of points or pixels.
--height <num>
The width of the image, as a number of points or pixels.
--title <string>
Title of the visualization, printed on the top of the visualization.
--background-color <color>
A specification of the color of the background of the visualization. (See ryspecs(5).)


Visualize data in foo.txt using the defaults:

rypiechart --input-path foo.txt --output-path bar.png