Libraries Available in Notebooks

This section shows a list of all the third-party libraries available to analysts in the Cytomic Orion notebooks, grouped by type, along with a brief description and useful resources.

In addition to third-party libraries, Cytomic Orion provides all clients with multiple libraries that help automate analyses and show results graphically. For a complete description of the APIs defined in the libraries, their objects, methods, and data enumerations, see these links:

Databases

Name Description

Psycopg

Access library to PostgreSQL databases. It fully implements the Python Database API Specification 2.0.

http://initd.org/psycopg/docs/

Pyodbc

Access library to ODBC databases. Compatible with Microsoft SQL Server, MySQL, Oracle, and others.

https://github.com/mkleehammer/pyodbc/wiki

maxminddb

Accesses MaxMind DB files, a binary file format that stores data indexed by IP address subnets (IPv4 or IPv6).

https://pypi.org/project/maxminddb/

Available database libraries

Graphs

Name Description

branca

Graphical library.

https://python-visualization.github.io/branca/

folium

Graphical library for handling interactive leaflet maps.

https://python-visualization.github.io/folium/

Graphviz

Graph visualization library for representing structural information as diagrams of abstract graphs and networks.

https://graphviz.readthedocs.io/en/stable/

Iplotter

Interactive charting library.

https://github.com/niloch/iplotter

ipywidgets

Uses Python controls to create GUIs that make interacting with users easier.

https://ipywidgets.readthedocs.io/en/stable/

matplotlib

2D mapping library that creates high-quality charts: histograms, bar charts, scatter plots, etc.

https://matplotlib.org/users/index.html

networkx

Package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

https://networkx.github.io/documentation/networkx-2.3/

pivottablejs

Implementation of Pivot Table (aka Pivot Grid, Pivot Chart, Cross-Tab) graphs with drag'n'drop functionality.

https://pypi.org/project/pivottablejs/

pydot

DOT language interface used by the Graphviz suite of programs.

https://github.com/pydot/pydot

pygal

Library for creating bar charts, pie charts, line charts, radar charts, etc.

http://pygal.org/en/stable/documentation/index.html

seaborn

Data visualization library based on mathplotlib. It provides a high-level interface for drawing attractive and informative statistical charts.

https://seaborn.pydata.org/

widgetsnbextension

HTML interactive widgets.

https://pypi.org/project/widgetsnbextension/

basemap

Library for building 2D maps. Designed to meet the needs of oceanographers and meteorologists

https://matplotlib.org/basemap/

igraph

Collection of network analysis tools that emphasize efficiency, portability, and ease of use,

cufflinks

Library that makes it easy to create charts from Pandas Dataframes.

https://plot.ly/ipython-notebooks/cufflinks/

Available libraries for graph processing

Python and Others

Name Description

future

Compatibility with future Python versions.

PyJWT

Encodes and decodes JSON Web Tokens (JWT).

https://pyjwt.readthedocs.io/en/latest/

pyparsing

Develops grammars to generate interpreters.

https://github.com/pyparsing/pyparsing

pytz

Operations with time zones.

http://pytz.sourceforge.net/

selenium

Web browser automation. This library automates web apps for tests, repetitive management tasks, etc.

https://www.seleniumhq.org/docs/

plotly

Develops data analytics web apps. This library enables you to build data visualization interfaces.

https://dash.plot.ly/

pixiedust

Add-on to Jupyter notebooks to improve the user experience of working with data..

https://pixiedust.github.io/pixiedust/

cyjupyter

Widget for visualizing network graphs.

https://github.com/cytoscape/cytoscape-jupyter-widget

pillow

API for generating bitmap images, based on PIL.

cairosvg

Converts SVG files to PDF and PNG.

https://cairosvg.org/documentation/

tqdm

Progress bar control.

https://tqdm.github.io/

Available libraries that extend Python capabilities

Data

Name Description

geoIP2

API for accessing the GeoIP2 service. This service is used to get geographic location data from an IP address.

https://geoip2.readthedocs.io/en/latest/

ipaddr

Inspects and manipulates IP addresses.

https://docs.python.org/3/howto/ipaddress.html

kiwisolver

Incremental constraint solving toolkit that efficiently solves systems of linear equalities and inequalities. Constraints can be either requirements or preferences. They are specified initially, and the solver updates the constrained variables to have values that satisfy the constraints

https://github.com/google/kiwi-solver

numpy

Fundamental package for scientific computing. It enables you to manipulate arrays, liner algebra routines, and Fouries transforms, generate random numbers, and more.

https://docs.scipy.org/

pandas

Library that provides high-performance, easy-to-use data structures and data analysis tools. It aims to be the fundamental high-level building block for doing practical, real-world data analysis.

http://pandas.pydata.org/pandas-docs/stable/getting_started/overview.html

pefile

Enables you to parse and work with Portable Executable (PE) files. Most of the information contained in the PE headers is accessible as well as all sections' details and their data.

https://github.com/erocarrera/pefile

pip-date

Lightweight command-line toolkit to show the installation or modification times of all your pip packages.

sciPy

Math software for scientific and engineering calculations.

https://docs.scipy.org/doc/scipy/reference/

qgrid

An interactive grid for sorting, filtering, and editing DataFrames.

https://qgrid.readthedocs.io/en/latest/

statsmodels

A module for the estimation of statistical models, as well as for conducting statistical tests, and statistical data exploration.

https://www.statsmodels.org/stable/index.html

scikit-learn

Tools for data mining, data analysis, and machine learning.

https://scikit-learn.org/stable/documentation.html

Available libraries for data processing