The GNU plotutils package contains software for both programmers and technical users. Its centerpiece is libplot, a powerful C/C++ function library for exporting 2-D vector graphics in many file formats, both vector and raster. It can also do vector graphics animations. hot
Gnuplot is a portable command-line driven interactive data and function plotting utility. Gnuplot supports many types of plots in either 2D and 3D. It can draw using lines, points, boxes, contours, vector fields, surfaces, and various associated text. It also supports various specialized plot types. Gnuplot supports many different types of terminals: interactive screen terminals (with mouse and hotkey functionality), pen plotters (like hpgl), printers (including postscript and many color devices), and printings to output file as vectorial pseudo-devices like LaTeX, metafont, pdf, svg, or bitmap png. Gnuplot is easily extensible to include new devices. Read more hot
gretl is a free, open-source econometrics package under the GNU Public License. The package comprises a shared library, a command-line client program, and a graphical client built using GTK+. It is written in C. The library and command-line client should compile and run on any platform that supports ANSI C; the client uses the GNU readline library if available. Read more hot
Maxima is a system for the manipulation of symbolic and numerical expressions, including differentiation, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear equations, and vectors, matrices, and tensors. Maxima produces high precision results by using exact fractions and arbitrarily long floating point representations, and can plot functions and data in two and three dimensions. Read more hot
PSPP is a program for statistical analysis of sampled data. It interprets commands in the SPSS language and produces tabular output in ASCII, PostScript, or HTML format. Read more hot
Scilab is a scientific software package for numerical computations providing a powerful open computing environment for engineering and scientific applications. Scilab includes hundreds of mathematical functions with the possibility to add interactively programs from various languages (C, Fortran...). It has sophisticated data structures (including lists, polynomials, rational functions, linear systems...), an interpreter and a high level programming language. Read more hot
AD Model Builder
(commercial) AD Model Builder is a package for creating nonlinear statistical models to analyze data.
ARfit is a collection of Matlab modules forestimating parameters of multivariate autoregressive (AR) models,diagnostic checking of fitted AR models, and analyzing eigenmodes of fitted AR models.
Bayani aims to be a scientific quality Graph Plotter totally in Arabic. This is done by implementing an arabic GUI and a total arabic strings handling: Axis labels, plot titles etc. It is written in Trolltech's QT 3.x library and destined to the *n*x platforms.
Biggles is a Python module for creating publication-quality 2D scientific plots. It supports multiple output formats (postscript, x11, png, svg, gif), understands simple TeX, and sports a high-level, elegant interface. It's intended for technical users with sophisticated plotting needs.
Bouquet is a graph generator written in ANSI Common Lisp. Bouquet produces Tulip graph description files; clusters and properties are supported.
The BUGS (Bayesian inference Using Gibbs Sampling) project is concerned with flexible software for the Bayesian analysis of complex statistical models using Markov chain Monte Carlo (MCMC) methods.
Cerc is a class providing a fixed length array of int or double that provides access to some of the GSL stats commands (mean, stdev, absdev, etc).
CSVSee graphs data from CSV files, especially those containing timestamps. You can graph all columns, or specific columns matching regular expressions.
Ctioga is a command-line plotting utility. It enables users to make publication-quality plots of data and mathematical functions quickly. Ctioga has been designed with ease of use and extensibility in mind. It is based on the powerful Tioga plotting library. Read more
Cuadro+ Thermal Simulator and Benchmarker
Cuadro+ Thermal Simulator and Benchmarker calculates the thermal history of a chip being cooled by a heatsink and forced convection. The algorithm employs a finite difference scheme and forward time stepping.
Cug is an equation plotter with a heavy emphasis on beautiful rendering--it can be considered a simple openGL modeler parameterized by mathematical equations. Extensive controls allow for real-time modification of lighting, coloring, texturing, fog, and a few other aspects. Rotation, panning, and zooming are easily controlled with the mouse. An off-screen rendering target allows for generation of large images.
daVinci Presenter is an innovative solution for graph visualization. With daVinci Presenter, complex structures can be automatically drawn in a most effective way. It allows you to improve your work by creating impressive diagrams of large networks, conceptual drafts, software architectures, work flows, etc.
An image, data, and function plotter. Function parameters can be manually tuned [or automatically fitted - not yet implemented] to given xy data. High-level scripting capability is provided [not yet] by the underlying Python programming language.
Econometrics Toolbox is for Matlab provides public domain source code useful in statistical estimation, graphics, and data manipulation.
Emacs Speaks Statistics: a programming interface and process interface for statistical programming
and data analysis
fofx is a function grapher for character-cell terminals. fofx takes a whitebread mathematical function, such as "sin(x)", and turns it into a 'graph' made up of text characters.
FreePlot is a simple mathematical program that plots 2-D functions written in Python. It provides an easy to use interface and a powerful graphing mechanism that allows the user to understand what he is doing at all times. FreePlot features: Save functions to an image file, unlimited number of functions on the same cartesian plane, multiple colors, multiple line styles and marks, and legend support.
g3data is used for extracting data from graphs. In publications graphs often are included, but the actual data is missing. g3data makes the extracting process much easier.
The Grace ASCII Import Wizard ("gaiw") is a cross-platform, Qt-based GUI allowing Grace users to create 2D XY plots from ASCII data files very easily. Grace is a very powerful, cross-platform, open-source 2D-plotting program which enjoys an excellent reputation of quality. However, few people actually create their data sets manually and the import functionality delivered with Grace makes the creation of complex plots (many graphs with many curves in each graph, with data coming from different files) somewhat tedious.
geg is a GTK+ Equation Grapher that allows you to visualise multiple 2D-functions of one variable, eg f(x) = 3 + sin(x), etc.
GENetic optimization and Bootstrapping of LInear Structures: an evolutionary program which estimates structural equation models with latent variables by combining the global search strength of evolutionary algorithms with the ability of derivative based algorithms to do rapid local hill climbing.
GLE is a graphics language that produces postscript, EPS, PDF, PNG, or JPG ouput from a simple script file. The GLE scripting language is full featured with variables, subroutines, logic control, looping, and graphing tools. It is great for plotting and charting data.
GLPlot is a plot package designed to be used from other applications. One of the goals is to replace gnuplot in Octave. It is based on Gtk+, OpenGL and GtkGLExt.
Gplot is a smart front-end for gnuplot. With few if any command line options one can plot one or more sets of data without learning the details of gnuplot.
gpss is a gnuplot front end for gathering and analyzing data. Currently supported sources are various /proc entries, ping, traceroute, vmstat, nagios, snort perf data, etc. It offers both 2D and 3D interactive or batch graphing and capture of things like bits per second, packets per second, drop percentage, fragments per second, and more. It is useful as both a performance evaluation tool or a NOC tool in the short term, and a trending tool for longer terms.
graph-tool is a program that contains general graph measurements algorithms, such as degree or properties distributions, degree or properties correlations, average distance, clustering, graph filtering, graph history, graph layout, and more, as well as a random graph generation routine.
GraphEd is an extensible graph editor. It supports directed and undirected labelled graphs of unlimited size and degree, with self loops and multiple edges. Edges are polylines with an arbitrary number of segments. There are several options to customize the graphical appearance of nodes and edges.
Graphite is a Python graphing package. Graphite enable the creation of scientific, engineering, and business graphs. Some graph types to be included are line graphs, bar charts, function plots, polar plots, parametric plots, and mesh plots. Graphite can produce output for formats such as postcript, pdf, gif, Windows, QuickDraw, Tk by using the PIDDLE backend. It should run on any platform that supports Python.
Graphlet is a Toolkit for Implementing Graph Editors and Graph Drawing Algorithms.
graphopt is a graph layout optimizer based on the iterative application of laws of physics instead of heuristics.
GraphTool is an interactive tool for editing graphs and visualizing the execution and results of graph algorithms. It runs under the X Windows environment and has full window/mouse interface. While the primary purpose of GraphTool is to provide a means for experimentally investigating the performance of graph algorithms, it has other useful features as well. It provides features for printing graphs in a visually appealing format, which makes it easier to prepare papers for publication.
Grocer is an econometric toolbox particularly devoted to time series for Scilab, a matrix-oriented software similar to Gauss and Matlab. Read more
GtkGraph is a simple graphing calculator written for X Windows using the Gtk widget set.
Guppi is a GNOME-based framework for graphing and interactive data analysis. Guppi is a library that can be used to extend other programs. Your own programs can either link directly to Guppi's shared libraries, or can embed Guppi plots via Bonobo, GNOME's component architecture.
Histo plots charts in the terminal with arbitrary streaming or non-streaming data.
IDSS is a statistical application for email surveys. It parses HTML questionnaires filled in by respondents. Output is: a separated database, a SAS DATA step import program, and correspondence tables between variable characteristics and field values. IDSS was developed as an alternative to Web-based statistical surveys. No coding experience or network programming is required to set up a survey. Tools for checking execution and coherence of data are available. Performing database authoring takes barely more running time than gzip compression of the survey questionnaires.
IsaViz is a visual environment for browsing and authoring RDF models represented as graphs. It features: # a 2.5D user interface allowing smooth zooming and navigation in the graph
# creation and editing of graphs by drawing ellipses, boxes and arcs, RDF/XML, Notation 3 and N-Triple import, RDF/XML, Notation 3 and N-Triple export, but also SVG and PNG export.
jsplot is a free interactive drawing and charting tool that runs on Unix and Windows95/NT. It is mostly a vector graphics program but can also import a number of image formats.
KaHIP (Karlsruhe High Quality Partitioning) is a family of graph partitioning programs. It includes KaFFPa (Karlsruhe Fast Flow Partitioner) in its variants Strong, Eco and Fast, KaFFPaE (KaFFPaEvolutionary) which is a parallel evolutionary algorithm that uses KaFFPa to provide combine and mutation operations, as well as KaBaPE which extends the evolutionary algorithm.
KGraphViewer is a GraphViz dot graph viewer for KDE. The graphviz program suite is a free software set of layout engines for graphs. They are commonly used in scientific domains and particularly in computer science. But until now there was a lack of GUI to look at the graphs.
KMatplot is a gnuplot-like tool for plotting data sets in either two or three dimensions. It can plot many types of 2d plots, including pixmaps and contours, and 3d surfaces. It offers a full WYSIWYG mode with multiple objects on a single page.
Kroket is an interactive graph visualization software. It is similar to dot/graphviz, but focuses on the exploration of the graph.
To this end, it features grouping, collapsing and filtering of nodes.
ksciplot is a function plotter for the KDE project.
LabPlot is a KDE application for data plotting and function analysis. It supports both 2D and 3D plots and tries to emulate most of the functions supported by programs like Microcal Origin or SPSS Sigmaplot. Read more
Lybniz is a simple desktop graph plotter. It can currently plot three functions and allows you to navigate the plot.
MacAnova is a free, noncommercial, interactive statistical analysis program; strengths are analysis of variance and related models, matrix algebra, time series, and (to a lesser extent) uni- and multi-variate exploratory statistics. Read more
mathplot is an interactive function grapher. It supports equations, inequations, displaying tangent, finding roots, extrema, and the intersection of 2 functions.
Mavscript allows the user to do calculations in a text document. Plain text and OpenOffice Writer files (odt/sxw) are supported. The calculation is done by the algebra system Yacas or by the Java interpreter BeanShell.
METAGRAPH is a small set of macros that help in drawing (un)directed graphs with METAPOST and the boxes package. The basic idea is providing low-impact definitions that produce automatically (labelled) nodes/vertices and (labelled) edges/arcs that connect correctly boxed items. Moreover, circular boxes with fixed radius are made available to produce more aesthetically pleasant graphs.
mfGraph is a graph rendering library for interactive applications. Written in C++ and Python, mfGraph parses GraphViz DOT and XDOT files and provides rendering and hit-testing facilities. Supports Microsoft Windows natively, GNU/Linux through wxPython.
mlGrace is a high-level OCaml interface to the Grace 2D plotting application. It makes extensive use of OCaml's labeled optional arguments, making the most common plotting operations quick and easy.
Mn_Fit is an interactive fitting and plotting package, that uses MINUIT to fit histograms or data read in from a file and displays the fit results on a screen. Many functions are built into the package and it is easy for the user to add new ones. Fitting of 1-D and 2-D histograms is possible, and you can also fit several histograms simultaneously and apply constraints on the function parameters.
Muac is a fast algorithm (n log(n)) for calculating the 2 dimensional KS test. Python code is used to illustrate and test the algorithm.
Mx is a matrix algebra interpreter and numerical optimizer for structural equation modeling and other types of statistical modeling of data.
NUOPT for S-PLUS
NUOPT for S-PLUS is a software package capable of solving very large optimization problems. Designed for analysts and decision makers, NUOPT for S-PLUS is used for a wide range of applications including portfolio optimization, nonlinear and robust statistical modeling, and circuit optimization.
(commercial) P-STAT offers survey analysis, statistical analysis, data and file management, data presentation, and report-writing capabilities. Double precision is used to store numeric data and for all statistical and arithmetic processing. A full suite of functions is available for processing character fields which can be from 1 to 50,000 characters in length.
P3D is a collection of simple but efficient fortran 77 routines, which can be used with the PGPLOT graphics library to plot three-dimensional particle distributions. The plots can be easily made interactive and allow for manipulation, which could be an efficient tool for examining a distribution and finding the optimal rendering technique.
plot2d allows you to plot 2D, X vs Y, and scatter plots directly to a compressed image file. You can plot up to 12 series. It uses a simple ASCII options file and runs from the console/terminal.
PlotDrop is a minimal GNOME frontend to gnuplot, and is designed for quick simple visualisation of 2D data series. It is not intended to encompass anywhere near the full capabilities of gnuplot. PlotDrop is intended to be used in tandem with an external filesystem browser such as GNOME's nautilus or KDE's konqueror. Data files are added by dragging them from the browser to the file list.
Ploticus is a free software package for Linux that creates graphical data displays for web pages and intranets, paper reports, posters, slides, or interactive use. Ploticus is script-driven and can be invoked automatically (automated) from web servers and other programs. Ploticus can work with flat ascii or spreadsheet data sets that can include numerics and text as well as dates and times in a wide variety of notations. It also has built-in capability of computing frequency distributions, cross-tabs, medians, quartiles, and curve fitting. It is the successor to IPL, a freeware plotting program by the same author, released in 1989.
Plotter is a GTK+ mathematical graph plotting application. It is written entirely in Python, an object orientated interpreted programming language, using the PyGtk bindings and the ROX-Lib library.
Poissonrun runs a given command statistically once every T seconds. The program can be run at any given time, but on average, it is every T seconds. The random process is based on the poisson distribution.
Probability and Statistics for Python
Probability and Statistics for Python is a fast C implementation of various probability and statistical methods with Python bindings, featuring combinations, Cartesians, priority queues, permutations and products.
Punto is a tool to plotting particles written for X. It reads data from a file and display them in a X window in several ways. Like dots, circles, squares and spheres. It can plot also vectorial fields. The output can be in one, two or three dimensions.
PyDespike is a program to graphically process (ie. despike) Raman and other spectroscopic data. Removing spikes in data due to artificial background fluctuations can be a tedious and time-consuming process, and since no other software with these requirements was known to exist, PyDespike was created to make Raman data processing more efficient.
PyMML is a Python package for statistical analysis and automatic classification of data.
Qgfe is a graphical interface to the powerful gnuplot program for Unix systems. A good knowledge of Gnuplot is required to use Qgfe.
QtiPlot is a clone of Origin for data analysis and scientific plotting. Read more
Quickplot is a fast interactive 2D plotter with infinite zooming, value picking, pipe input, and unlimited plots displayed. The difference between this 2D plotter and most 2D plotters is that the primary purpose of Quickplot is to help you quickly interact with your data. Of secondary importance is to make a pretty static picture of your data. Features that distinguish Quickplot include: one click zooming, any number of plots with different scales displayed at one time, value picking for any number of plots with different scales displayed at one time, and reading data from standard input.
(commercial) Regression Analysis of Time Series is an econometrics/time-series analysis software package.
RLPlot is a plotting program to create high quality graphs from data. Based on values stored in a spreadsheet several menus help you to create graphs of your choice. The Graphs are displayed as you get them (Wysiwyg). Double click any element of the graph (or a single click with the right mouse button) to modify its properties. RLPlot is a cross platform development for Linux and Windows. Read more
Real Time Plotter accepts an ongoing stream of data points from stdin, drawing them in connect-the-dots style into an X window. While drawing new points, rtp also allows the user to zoom in and select viewing modes through a mouse driven interface.
(commercial) S-PLUS provides the scalability to handle gigabyte-size data sets and the flexibility needed to integrate advanced analytics into the business processes that decisions makers and researchers interact with every day. With S-PLUS 7, statisticians and developers can quickly develop prototypes and deliver targeted applications that automate analytical processes and enable non-statisticians to conduct their own analyses.
SarPplot is a simple application which takes the output of the atsar application and puts it into Gnuplot data files. It can be useful on server systems for performance analysis.
SciDAVis is a free interactive application aimed at data analysis and publication-quality plotting. It combines a shallow learning curve and an intuitive, easy-to-use graphical user interface with powerful features such as scriptability and extensibility.
SciGraphica pretends to be a clone of the popular commercial (and expensive) application "Microcal Origin". Although it is in a very early development stage, it supplies many of the basic plotting features for 2D charts.
SM is an interactive plotting package for drawing graphs. It does have some capability to handle image data, but mostly works with vectors. The main features of the package are that one can generate a nice looking plot with a minimum number of simple commands, that one can view the plot on the screen and then with a very simple set of commands send the same plot to a hardcopy device.
SOFA is a statistics program that focuses on being easy to use. SOFA won't replace sophisticated statistics systems like R, but there is a good chance it will do what you need and do it well. Read more
Spatial Statistics toolbox
Spatial Statistics toolbox is for Matlab allows users to estimate large scale spatial autoregressions using maximum likelihood.
SpectraScan loads images from scanned curves and exports the pixel coordinates of the curve in CSV format. It was designed especially for scans of ESR or other spectra, which are to be converted into a computer readable format.
(commercial) Stata 9 is a fast and powerful statistical package for research professionals of all disciplines, from biostatisticians to political scientists. Stata is a complete, integrated statistical package that provides everything you need for data analysis, data management, and graphics. Stata 9 adds many new features such as linear mixed models, balanced repeated replications, and multinomial probit.
Statist is a small and portable statistics program written in C. It is terminal-based, but can utilise GNUplot for plotting purposes. It is simple to use and can be run in scripts. Big datasets are handled reasonably well on small machines. In spite of its low overhead, statist can do quite a bunch of regression functions and tests in a comprehensible way.
StatistX provides a graphical user interface to the tested statistics program statist.
Strategico is an engine for running statistical analysis over groups of time series. It can manage one or more groups (projects) of time series: by default, you can get data from a database or CSV files, normalize them, and then save them inside the engine.
Strip Charts for GtkPlot
Strip Charts for GtkPlot provides a set of GTK widgets for automating the creation and management of strip chart plots. A 'chart' consists of at least one (and typically several) 'strips' of data plotted horizontally. Its assumed that all strips have a common x-axis (typically time), and are to be scrolled and zoomed as a unit.
TablPlot is an easy to use program that reads a number table and makes a cartesian (XY) or polar (RPhi) plot. Automatic (log)scaling, spline interpolation, curve fitting, plot sizing and PostScript output.
TeeChart-Office is a free charting and plotting tool intended for both the end-user and the developer. The main purpose of TeeChart-Office is to easily create Charts, link them to heterogenous sources of data, modify and change the chart appearance, export Charts to native format, image files and printer, share created charts with other users and configure the many properties it offers.
TimeDataPlotter creates interactive plots of data lines over a time scale. Automatic detection of input format and scale will result in instantaneous results without any need for configuration.
Veusz is a scientific plotting package written in Python. It uses PyQt (Wiki) and Numarray. Veusz is designed to produce publication-ready Postscript output. Veusz provides a GUI, command line and scripting interface (based on Python) to its plotting facilities. The plots are built using an object-based system to provide a consistent interface.
vfplot is a program for plotting two-dimensional vector fields using curved arrows and adaptive placement. The field can be specified as an input grid (in several formats) or compiled-in. Output is in PostScript.
xdot.py is an interactive viewer for graphs written in Graphviz's dot language. It internally uses the graphviz's xdot output format as an intermediate format and PyGTK and Cairo for rendering. It can be used either as a standalone application from command line or as a library embedded in a Python application.
xfigchart.pl is a quick and easy way to create bar charts that can be used in LaTeX via XFig. xfigchart.pl uses a commandline interface. It takes data values as a table and writes an xfig file to stdout.
xldlas is a program for statistics. Most standard statistical tasks can be performed by xldlas, including data summaries, OLS regression, ANOVA, line plots, scatter plots, and histograms. In addition, xldlas includes some experimental data fitting techniques that use connectionist aritificial intelligence (such as Neural Networks and Genetic Algorithms).
XploRe is a combination of classical and modern statistical procedures, in conjunction with sophisticated, interactive graphics. XploRe is the basis for statistical analysis, research, and teaching. Its purpose lies in the exploration and analysis of data, as well as in the development of new techniques. The statistical methods of XploRe are provided by various quantlets. n addition, XploRe is a high level object-oriented programming language i.e., the user writes procedures or functions, such as in Pascal or C/C++.
XPLOT is a general package for creating X-Y plots that also allows for sophisticated data visualization, processing, manipulation and analysis. It is written in IDL. Some of the XPLOT features are: Direct loading of data from multicolumn ASCII files, Access to SPEC data files, and Direct printing from Unix workstations and PCs, and creation of PostScript and encapsulated PostScript files.
Yplot is a very fast interpreted matrix language with a C-like syntax. It has the ability to be easily extended to add new commands/functions calling compiled subroutines.