PyPnF is a set of classes and functions that allow you to generate a Point and Figure (PnF) stock chart. PnF charts have been around for over one hundred years, and are a way to focus on the significant price movements of a stock (or commodity, etc.) but filter out minor daily fluctuations.
The file datadefs.py contains data enumerations and classes for defining each column and an overall chart. The 'Column' class encapsulates the data needed to define a single column (either X or O). The 'Chart' class contains the columns and related metadata that define a PnF chart. The Chart class does not contain output code, only a standard data representation of a chart. This allows users to define their own output (html table, spreadsheet, or some other graphic representation.) An example html output is shown in example.py.
The file scalefuncs.py contains functions for defining and working with the various chart scales.
The file example.py uses example_data.csv as a source of fake price data and generates a basic .html page with a chart.
You can read more on Point and Figure charting on wikipedia. The website stockcharts.com has good information in their Point and Figure chart school.