Orange is a component-based visual programming software package for data visualization, machine learning, data mining, and data analysis. Orange components are called widgets and they range from simple data visualization, subset selection, and preprocessing, to empirical evaluation of learning algorithms and predictive modeling. Visual programming is implemented through an interface in which workflows are created by linking predefined or user-designed widgets, while advanced users can use Orange as a Python library for data manipulation and widget alteration.
Software
Orange is an open-source software package released under GPL. Versions up to 3.0 include core components in C++ with wrappers in Python are available on GitHub. From version 3.0 onwards, Orange uses common Python open-source libraries for scientific computing, such as numpy, scipy and scikit-learn, while its graphical user interface operates within the cross-platformQt framework. The default installation includes a number of machine learning, preprocessing and data visualization algorithms in 6 widget sets. Additional functionalities are available as add-ons. Orange is supported on macOS, Windows and Linux and can also be installed from the Python Package Index repository. As of May 2018 the stable version is 3.13 and runs with Python 3, while the legacy version 2.7 that runs with Python 2.7 is still available.
Features
Orange consists of a canvas interface onto which the user places widgets and creates a data analysis workflow. Widgets offer basic functionalities such as reading the data, showing a data table, selecting features, training predictors, comparing learning algorithms, visualizing data elements, etc. The user can interactively explore visualizations or feed the selected subset into other widgets.
Canvas: graphical front-end for data analysis
Widgets:
*Data: widgets for data input, data filtering, sampling, imputation, feature manipulation and feature selection
*Visualize: widgets for common visualization and multivariate visualization.
**Spectroscopy: widgets for analyzing and visualization of spectral datasets
and k-Means.
Objectives
The program provides a platform for experiment selection, recommendation systems, and predictive modeling and is used in biomedicine, bioinformatics, genomic research, and teaching. In science, it is used as a platform for testing new machine learning algorithms and for implementing new techniques in genetics and bioinformatics. In education, it was used for teaching machine learning and data mining methods to students of biology, biomedicine, and informatics.
Extensions
Various projects build on Orange either by extending the core components with add-ons or using only the Orange Canvas to exploit the implemented visual programming features and GUI.
In 2003, graphical user interface was redesigned and re-developed for Qt framework using PyQt Python bindings. The visual programming framework was defined, and development of widgets has begun.
In 2005, extensions for data analysis in bioinformatics was created.
In 2008, Mac OS X DMG and Fink-based installation packages were developed.
In 2009, over 100 widgets were created and maintained.
From 2009, Orange is in 2.0 beta and web site offers installation packages based on daily compiling cycle.
In 2012, new object hierarchy was imposed, replacing the old module-based structure.
In 2013, a major GUI redesign.
In 2015, Orange 3.0 is released.
In 2016, Orange is in version 3.3. The development uses monthly stable release cycle.