Giter Site home page Giter Site logo

py37 / jupyterq Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kxsystems/jupyterq

0.0 2.0 0.0 757 KB

Jupyter kernel for kdb+

License: Apache License 2.0

Batchfile 3.05% Shell 1.20% q 25.34% Makefile 0.45% Dockerfile 1.50% Jupyter Notebook 56.63% Python 9.80% C 2.04%

jupyterq's Introduction

jupyterq

Jupyter kernel for kdb+. Features include

  • Syntax Highlighting for q
  • Code completion for q keywords, .z/.h/.Q/.j namespace functions, and user defined variables
  • Code help for q keywords and basic help (display and type information) for user defined objects
  • script like execution of code (mulitline input)
  • Inline display of charts created using embedPy and matplotlib
  • console stdout/stderr capture and display in notebooks
  • Inline loading and saving of scripts into and from notebook cells

Requirements

  • kdb+>= v3.5 64-bit
  • Python >= 3.5
  • embedPy

Overview

You can either

  • Install jupyterq to run on your local machine; or
  • Download or build a Docker image in which to run jupyterq

There are two ways to install jupyterq on your local machine:

  1. Download and install a release

  2. Install with Conda - recommended if you are already using Anaconda Python

Install on local machine

Download and install a release

  1. Make sure you have installed embedPy

  2. Download a release archive from the releases page, and unzip it.

  3. Install the required Python packages with

    pip

    pip install -r requirements.txt

    or with conda

    conda install --file requirements.txt
  4. Ensure QHOME is set and you have a working version of q in your PATH, note that jupyter will not pick up bash aliases when starting q, the location of the q executable needs to be in your PATH.

  5. Run the install script

    Linux/macOS

      ./install.sh

    Windows

     install.bat
    

Install with Conda

  1. Download and install either the full Anaconda distribution or Miniconda for Python3.

  2. Use the conda to install jupyterq and it's dependencies

conda install -c kx jupyterq
  1. Ensure you can run q before running jupyterq for the first time, you may need to generate an on demand licence
q
...
q)\\

Running after install

To run the jupyter console

jupyter console --kernel=qpk

To run the example notebook

jupyter notebook kdb+Notebooks.ipynb

Run a Docker Image

If you have Docker installed you can alternatively run:

docker run -it -p 8888:8888 --name myjupyterq kxsys/jupyterq

Now point your browser at http://localhost:8888/notebooks/kdb%2BNotebooks.ipynb.

For subsequent runs, you will not be prompted to redo the license setup when calling:

docker start -ai myjupyterq

N.B. instructions regarding headless/presets are available

N.B. build instructions for the image are available

Using notebooks

See the notebook kdb+Notebooks.ipynb for full interactive examples and explanation, it should be viewable on github.

Documentation

Documentation is available on the jupyterq homepage.

jupyterq's People

Contributors

jhanna-kx avatar elopezaguilera avatar jimdigriz avatar awilson-kx avatar 5jt avatar

Watchers

James Cloos avatar 500-9 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.