Skip to main content

A simple live plotter via socket.

Project description

socket-plotter

Instant plotter based on pyqtgraph via socket communication.

PyPI version License: MIT

Installation

with pipx

  1. Install CLI commands.
    • pipx install socket-plotter[pyside]
  2. Install in python environments where you want to use this library
    • activate your environment
    • pip install socket-plotter

Usage

from socket_plotter import plot_lines, plot_image, plot_image_and_lines
import numpy as np

# for line plot
xdata = np.arange(100)
ydata = np.random.randn(100)
plot_lines(xdata, ydata)

# for image plot
img = np.random.randn(100, 100)
plot_image(img)

# for both, the image and each row of the image are displayed.
img = np.random.randn(100, 100)
plot_image_and_lines(img)

The above three functions check if a plotter process exists. If needed, a new plotter process will be launched before plotting. You can specify your python executable to launch plotter GUIs via an environment variable SOCKETPLOTTER_PYTHON_EXECUTABLE.

Launch via command line interface

You can launch them as executables. Note that in this case SOCKETPLOTTER_PYTHON_EXECUTABLE will be ignore. The python interpreter in the installed environment will be used.

# launch it in background
$ socket_image_plotter &
$ socket_line_plotter &

Addresses and ports

The default ports are 8765 for lineplot and 8766 for imageplot. The default address is 127.0.0.1. Other ports and address can be assigned as the following:

plot_lines(xdata, ydata, addr='<address to plotter>', port=7777)

screenshots

plot lines

plot image

Change log

[0.1.4]

  • refine docstrings
  • add entrypoints via CLI

[0.1.3]

  • headers should be json-formatted.
  • implement json-based data transfer

[0.1.2]

  • executable switch via SOCKETPLOTTER_PYTHON_EXECUTABLE

[0.1.1]

  • removed PySide2 from install_requires to avoid automatic installation by package managers for compatibility for pip and anaconda environments

[0.1.0]

  • released

Memo

  • sphinx-build docs docs/_build at the repo root.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

socket-plotter-0.1.4.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

socket_plotter-0.1.4-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file socket-plotter-0.1.4.tar.gz.

File metadata

  • Download URL: socket-plotter-0.1.4.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for socket-plotter-0.1.4.tar.gz
Algorithm Hash digest
SHA256 35f8e487e11dd20e2d7f8fbe941724f38e018049132b553b02b2403667dba0c5
MD5 e80cb862edb01ffbe00436f5f4457122
BLAKE2b-256 55b674092e840f4ecc41359083c4dd50c4e99ca047276b1019be80a37576786e

See more details on using hashes here.

File details

Details for the file socket_plotter-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for socket_plotter-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4c453bb6fb3c9964fb7a6cbbb7e8877f696245a1e1a6e50f3daef53b3451f46d
MD5 b05d6206e3f55608f4773447541bad1a
BLAKE2b-256 9bfbc8547037973fefb797ba5498322f98c6493457e231249d5735f42e2e467f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page