Skip to content

Commit 164a917

Browse files
authored
Merge pull request #156 from jupytercalpoly/waidhoferj/update-readme
Updated readme
2 parents 5cc047b + 607b04e commit 164a917

File tree

2 files changed

+46
-6
lines changed

2 files changed

+46
-6
lines changed

README.md

Lines changed: 46 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
1+
# Jupyter Bifrost
12

2-
# jupyter_bifrost
3+
![Github Actions Status](https://github.com/jupytercalpoly/Jupyter-Bifrost/workflows/Build/badge.svg) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/jupytercalpoly/Jupyter-Bifrost.git/main?urlpath=lab%2Ftree%2Fexamples%2Fintroduction.ipynb) [![npm version](https://badge.fury.io/js/jupyter_bifrost.svg)](https://badge.fury.io/js/jupyter_bifrost) [![PyPI version](https://badge.fury.io/py/jupyter-bifrost.svg)](https://badge.fury.io/py/jupyter-bifrost) [![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
34

4-
[![Build Status](https://travis-ci.org//jupyter_bifrost.svg?branch=master)](https://travis-ci.org//jupyter_bifrost)
5-
[![codecov](https://codecov.io/gh//jupyter_bifrost/branch/master/graph/badge.svg)](https://codecov.io/gh//jupyter_bifrost)
5+
![Jupyter Bifrost Workflow](docs/resources/ChartSelection.gif)
6+
A Jupyter Widget for Interactive Data Visualization. Bifrost provides useful chart recommendations and easy integration with Pandas DataFrames. It also provides a variety of analysis tools:
67

8+
- Chart history log for keeping track of your data analysis.
9+
- Targeted graph suggestions to drive further data exploration.
10+
- Interactive filters for quantitative and categorical fields.
11+
- Aggregations and binning for axis encodings.
12+
- An expressive Python API
713

8-
A Jupyter Widget for Interactive Data Visualization
14+
The extension allows data scientists to build familiarity with a dataset without sacrificing the reproducibility of code. Changes made in the Bifrost GUI are automatically translated into Pandas Queries, allowing developers to jump back into scripting whenever it is most convenient.
915

10-
## Installation
16+
## Getting Started
17+
18+
### Installation
1119

1220
You can install using `pip`:
1321

@@ -17,19 +25,48 @@ pip install jupyter_bifrost
1725

1826
If you are using Jupyter Notebook 5.2 or earlier, you may also need to enable
1927
the nbextension:
28+
2029
```bash
2130
jupyter nbextension enable --py [--sys-prefix|--user|--system] jupyter_bifrost
2231
```
2332

33+
### Using the Extension
34+
35+
Jupyter Bifrost is intended to be used in Jupyter Notebooks in JupyterLab. Start by importing the package:
36+
37+
```python
38+
from jupyter_bifrost import Chart
39+
```
40+
41+
Then instantiate the chart object with a dataset:
42+
43+
```python
44+
chart = Chart("<my-dataset>.csv")
45+
#or
46+
df = pd.DataFrame()
47+
chart = Chart(df)
48+
```
49+
50+
Finally, plot the dataset to open up the Bifrost GUI:
51+
52+
```python
53+
res = chart.plot()
54+
# the `res` DataFrame will always stay up to date with the filters and aggregations applied in the GUI
55+
```
56+
57+
For additional help with the extension, take a look at the wiki, or the help menu located in the menu bar of the Bifrost GUI.
58+
2459
## Development Installation
2560

2661
Create a dev environment:
62+
2763
```bash
2864
conda create -n jupyter_bifrost-dev -c conda-forge nodejs yarn python jupyterlab
2965
conda activate jupyter_bifrost-dev
3066
```
3167

3268
Install the python. This will also build the TS package.
69+
3370
```bash
3471
pip install -e ".[test, examples]"
3572
```
@@ -55,18 +92,21 @@ you might also need another flag instead of `--sys-prefix`, but we won't cover t
5592
of those flags here.
5693

5794
### How to see your changes
95+
5896
#### Typescript:
97+
5998
If you use JupyterLab to develop then you can watch the source directory and run JupyterLab at the same time in different
6099
terminals to watch for changes in the extension's source and automatically rebuild the widget.
61100

62101
```bash
63102
# Watch the source directory in one terminal, automatically rebuilding when needed
64-
yarn run watch
103+
jlpm watch
65104
# Run JupyterLab in another terminal
66105
jupyter lab
67106
```
68107

69108
After a change wait for the build to finish and then refresh your browser and the changes should take effect.
70109

71110
#### Python:
111+
72112
If you make a change to the python code then you will need to restart the notebook kernel to have it take effect.

docs/resources/ChartSelection.gif

9.4 MB
Loading

0 commit comments

Comments
 (0)