• Stars
    star
    4,856
  • Rank 8,657 (Top 0.2 %)
  • Language
    Python
  • License
    Other
  • Created over 11 years ago
  • Updated 11 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🍊 📊 💡 Orange: Interactive data analysis

Orange Data Mining

Orange Data Mining

Orange is a data mining and visualization toolbox for novice and expert alike. To explore data with Orange, one requires no programming or in-depth mathematical knowledge. We believe that workflow-based data science tools democratize data science by hiding complex underlying mechanics and exposing intuitive concepts. Anyone who owns data, or is motivated to peek into data, should have the means to do so.

Example Workflow

Installing

Easy installation

For easy installation, Download the latest released Orange version from our website. To install an add-on, head to Options -> Add-ons... in the menu bar.

Installing with Conda

First, install Miniconda for your OS.

Then, create a new conda environment, and install orange3:

# Add conda-forge to your channels for access to the latest release
conda config --add channels conda-forge

# Perhaps enforce strict conda-forge priority
conda config --set channel_priority strict

# Create and activate an environment for Orange
conda create python=3 --yes --name orange3
conda activate orange3

# Install Orange
conda install orange3

For installation of an add-on, use:

conda install orange3-<addon name>

See specific add-on repositories for details.

Installing with pip

We recommend using our standalone installer or conda, but Orange is also installable with pip. You will need a C/C++ compiler (on Windows we suggest using Microsoft Visual Studio Build Tools). Orange needs PyQt to run. Install either:

  • PyQt5 and PyQtWebEngine: pip install -r requirements-pyqt.txt
  • PyQt6 and PyQt6-WebEngine: pip install PyQt6 PyQt6-WebEngine

Installing with winget (Windows only)

To install Orange with winget, run:

winget install --id  UniversityofLjubljana.Orange 

Running

Ensure you've activated the correct virtual environment. If following the above conda instructions:

conda activate orange3

Run orange-canvas or python3 -m Orange.canvas. Add --help for a list of program options.

Starting up for the first time may take a while.

Developing

GitHub Actions codecov Contributor count Latest GitHub commit

Want to write a widget? Use the Orange3 example add-on template.

Want to get involved? Join us on Discord, introduce yourself in #general!

Take a look at our contributing guide and style guidelines.

Check out our widget development docs for a comprehensive guide on writing Orange widgets.

The Orange ecosystem

The development of core Orange is primarily split into three repositories:

biolab/orange-canvas-core implements the canvas,
biolab/orange-widget-base is a handy widget GUI library,
biolab/orange3 brings it all together and implements the base data mining toolbox.

Additionally, add-ons implement additional widgets for more specific use cases. Anyone can write an add-on. Some of our first-party add-ons:

Setting up for core Orange development

First, fork the repository by pressing the fork button in the top-right corner of this page.

Set your GitHub username,

export MY_GITHUB_USERNAME=replaceme

create a conda environment, clone your fork, and install it:

conda create python=3 --yes --name orange3
conda activate orange3

git clone ssh://[email protected]/$MY_GITHUB_USERNAME/orange3

# Install PyQT and PyQtWebEngine. You can also use PyQt6
pip install -r requirements-pyqt.txt
pip install -e orange3

Now you're ready to work with git. See GitHub's guides on pull requests, forks if you're unfamiliar. If you're having trouble, get in touch on Discord.

Running

Run Orange with python -m Orange.canvas (after activating the conda environment).

python -m Orange.canvas -l 2 --no-splash --no-welcome will skip the splash screen and welcome window, and output more debug info. Use -l 4 for more.

Add --clear-widget-settings to clear the widget settings before start.

To explore the dark side of the Orange, try --style=fusion:breeze-dark

Argument --help lists all available options.

To run tests, use unittest Orange.tests Orange.widgets.tests

Setting up for development of all components

Should you wish to contribute Orange's base components (the widget base and the canvas), you must also clone these two repositories from Github instead of installing them as dependencies of Orange3.

First, fork all the repositories to which you want to contribute.

Set your GitHub username,

export MY_GITHUB_USERNAME=replaceme

create a conda environment, clone your forks, and install them:

conda create python=3 --yes --name orange3
conda activate orange3

# Install PyQT and PyQtWebEngine. You can also use PyQt6
pip install -r requirements-pyqt.txt

git clone ssh://[email protected]/$MY_GITHUB_USERNAME/orange-widget-base
pip install -e orange-widget-base

git clone ssh://[email protected]/$MY_GITHUB_USERNAME/orange-canvas-core
pip install -e orange-canvas-core

git clone ssh://[email protected]/$MY_GITHUB_USERNAME/orange3
pip install -e orange3

# Repeat for any add-on repositories

It's crucial to install orange-base-widget and orange-canvas-core before orange3 to ensure that orange3 will use your local versions.

More Repositories

1

orange2

DEPRECATED: Orange 2 (Python 2) data mining suite. NEW: https://github.com/biolab/orange3
Python
307
star
2

orange3-text

🍊 📄 Text Mining add-on for Orange3
Python
127
star
3

orange3-associate

🍊 📦 Frequent itemsets and association rules mining for Orange 3.
Python
65
star
4

orange3-timeseries

🍊 📈 Orange add-on for analyzing, visualizing, manipulating, and forecasting time series data.
Python
62
star
5

orange3-example-addon

Example Addon for Orange3
Python
52
star
6

orange3-network

🍊 🕸 Network analysis add-on for Orange data mining suite.
Python
39
star
7

orange-canvas-core

Orange Canvas core workflow editor
Python
35
star
8

orange3-imageanalytics

🍊 🎑 Orange3 add-on for dealing with image related tasks
Python
32
star
9

orange3-educational

🍊 🎓 Educational widgets for machine learning and data mining in Orange 3.
Python
27
star
10

orange-docker

Dockerfile
26
star
11

orange3-geo

🍊 🌍 Orange add-on for dealing with geography and geo-location
Python
25
star
12

orange-widget-base

Base widget and workflow definitions for Orange
Python
24
star
13

orange3-recommendation

🍊 👎 Add-on for Orange3 to support recommender systems.
Python
23
star
14

orange3-bioinformatics

🍊🔬 Bioinformatics add-on for Orange3
Python
20
star
15

orange3-single-cell

🍊🔬 Orange add-on for gene expression of single cell data
Python
17
star
16

orange-web

Orange Data Mining Homepage
CSS
16
star
17

ipynb

Biolab's IPython's notebooks.
Jupyter Notebook
16
star
18

orange3-datafusion

🍊 🔗 Data fusion add-on for Orange3
Python
16
star
19

PyQtTester

A tool for testing PyQt applications
Python
14
star
20

orange3-prototypes

🍊 ⚠️ Prototype Orange widgets — only for the brave.
Python
11
star
21

orange3-conformal

Conformal Prediction library for Orange3
Python
10
star
22

orange-lecture-notes

TeX
9
star
23

orange-bio

Python
8
star
24

orange-scripts

Scripts for the Python Script Orange widget
Python
8
star
25

tsne-embedding

Embedding to Reference t-SNE Space Addresses Batch Effects in Single-Cell Classification
Jupyter Notebook
7
star
26

orange-hugo

JavaScript
6
star
27

datasets

Python
6
star
28

orange-lecture-notes-web

JavaScript
5
star
29

orange3-addons

A list of add-ons for Orange3 add-on dialog
Python
5
star
30

orange3-explain

Explainable AI add-on for Orange3
Python
5
star
31

orange3-installers

Scripts for building Orange (http://orange.biolab.si/) application installers
NSIS
4
star
32

text-semantics

The package with scripts for semantic analyser project
Python
4
star
33

red

Inference of Epistatic Gene Networks
Python
3
star
34

serverfiles

Python
2
star
35

orange-notification-feed

Python
2
star
36

qt-graph-helpers

Graph primitives for PyQt
C++
2
star
37

scorange-hugo

scOrange home page in hugo
JavaScript
2
star
38

orange3-survival-analysis

🍊 ➕ Survival Analysis add-on for Orange3 data mining suite.
Python
2
star
39

orange-web2

TypeScript
2
star
40

orange3-world-happiness

The add-on to access world happiness data
Python
2
star
41

monroe-anal

A Python 3 utility library for querying, analyzing, and visualizing MONROE data.
Python
1
star
42

resolwe-server

Resolwe based server for Orange data mining tools
Python
1
star
43

orange-translations

Translation files for Orange and subprojects
Python
1
star
44

orange-tools

Python
1
star
45

orange3-datasets

Python
1
star
46

orange-lecture-notes-web-be

Python
1
star
47

xaim-website

HTML
1
star