• Stars
    star
    108
  • Rank 321,259 (Top 7 %)
  • Language
    JavaScript
  • License
    GNU Lesser Genera...
  • Created almost 7 years ago
  • Updated over 5 years ago

Reviews

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

Repository Details

Natural Language Processing Visualization in Python

Pynorama

Pynorama is a tool for visualizing intricate datasets for which a simple table format is not suitable. It was created with Natural Language Processing applications in mind.

pynorama example screenshot

Pynorama lets you define views in Python that are rendered as interactive web applications, letting you browse, analyse and understand your data.

Pynorama is scalable and extensible. Pynorama has a clean and simple architecture. It makes little assumptions about your data source or data format. Read in the documentation about developing extensions.

Quickstart

Install Pynorama

For a minimal install run:

pip install pynorama

Using Pynorama

To create a view:

  • define a table describing your data records. Currently supported sources are pandas.DataFrame and MongoDB queries.
  • define different stages of your data pipeline.
  • return a particular records for a given stage.
  • configure the UI

In Python this would look similar to this:

from pynorama import View
from pynorama.table import PandasTable

class ExampleView(View):
    def __init__(self, name, description=''):
        super(ExampleView, self).__init__(name, description)
        setup_data()

    def get_pipeline(self):
        return {
            'raw_stage': {'viewer': 'raw'},
            'tokenized': {'viewer': 'json', 'parents': ['raw_stage']}
        }

    def get_record(self, key, stage):
        if stage == 'raw_stage':
            return get_html(key)
        else:
            return get_processed_data(key)

    def get_table(self):
        return PandasTable(get_dataframe())

Next, register the view with pynorama:

from pynorama import register_view

register_view(ExampleView('example'))

Finally, let Pynorama set up a Flask server for you and start it:

from pynorama import make_server

app = make_server()
app.run(host='localhost', port='5000')

Now just run your Python script! The view should be accessible at http://localhost:5000/view/example.

For more information check the examples and the documentation!

Acknowledgements

Pynorama was developed at Man AHL.

Original concept and implementation: Alexander Wettig

Contributors from AHL Tech team:

Contributions welcome!

License

Pynorama is licensed under the GNU LGPL v2.1. A copy of which is included in LICENSE

More Repositories

1

dtale

Visualizer for pandas data structures
TypeScript
4,687
star
2

arctic

High performance datastore for time series and tick data
Python
3,053
star
3

ArcticDB

ArcticDB is a high performance, serverless DataFrame database built for the Python Data Science ecosystem.
C++
1,480
star
4

notebooker

Productionise & schedule your Jupyter Notebooks as easily as you wrote them.
Python
856
star
5

pytest-plugins

A grab-bag of nifty pytest plugins
Python
562
star
6

PythonTrainingExercises

Code to exercise your Python knowledge.
Python
259
star
7

dapr-sidekick-dotnet

Dapr Sidekick for .NET - a lightweight lifetime management component for Dapr
C#
175
star
8

mdf

Data-flow programming toolkit for Python
Python
167
star
9

PyBloqs

A flexible framework for visualizing data and automated creation of reports.
Python
151
star
10

page-objects

Page Objects web testing pattern for Python
Python
126
star
11

partialtesting

Run only the tests that are relevant for your changes
Python
73
star
12

jupyterlab-autoplot

Magical Plotting in JupyterLab
Python
65
star
13

okcli

An Oracle-DB command line client
Python
50
star
14

adaero

A platform for managing peer-to-peer feedback
Python
43
star
15

pkglib

Company-centric Python packaging and testing library
Python
39
star
16

openstack_load_leveller

Openstack Load Leveller / Load Balancer
Python
30
star
17

prometheus-flashblade-exporter

Export metrics from Pure Storage FlashBlade to Prometheus
Go
29
star
18

mockextras

Addon library for the python Mock library
Python
25
star
19

hubot-servicenow-tickets

a servicenow plugin for hubot
JavaScript
19
star
20

jenkins-blueprint-plugin

Build Jenkins projects according to a .jenkins.yml file in the repository.
Java
17
star
21

sparrow

C++20 idiomatic APIs for the Apache Arrow Columnar Format
C++
15
star
22

ftp-coredump

FTP core dump script and related Ansible roles
Shell
13
star
23

servicenow-lite

utility library for interacting with servicenow
JavaScript
11
star
24

hiveminder

Python
8
star
25

hexplode

Python
8
star
26

microbit

Information and examples about the BBC micro:bit
Python
5
star
27

pydata2022

3
star