• Stars
    star
    107
  • Rank 312,021 (Top 7 %)
  • Language
    JavaScript
  • License
    GNU Lesser Genera...
  • Created over 6 years ago
  • Updated almost 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,491
star
2

arctic

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

ArcticDB

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

notebooker

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

pytest-plugins

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

PythonTrainingExercises

Code to exercise your Python knowledge.
Python
254
star
7

dapr-sidekick-dotnet

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

mdf

Data-flow programming toolkit for Python
Python
161
star
9

PyBloqs

Python
146
star
10

page-objects

Page Objects web testing pattern for Python
Python
127
star
11

partialtesting

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

jupyterlab-autoplot

Magical Plotting in JupyterLab
Python
63
star
13

okcli

An Oracle-DB command line client
Python
49
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

prometheus-flashblade-exporter

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

openstack_load_leveller

Openstack Load Leveller / Load Balancer
Python
28
star
18

mockextras

Addon library for the python Mock library
Python
25
star
19

hubot-servicenow-tickets

a servicenow plugin for hubot
JavaScript
20
star
20

jenkins-blueprint-plugin

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

ftp-coredump

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

servicenow-lite

utility library for interacting with servicenow
JavaScript
11
star
23

hiveminder

Python
8
star
24

hexplode

Python
8
star
25

microbit

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

pydata2022

3
star