{"id":13393722,"url":"https://github.com/sgreben/jp","last_synced_at":"2025-04-08T10:24:19.361Z","repository":{"id":56645649,"uuid":"126308247","full_name":"sgreben/jp","owner":"sgreben","description":"dead simple terminal plots from JSON data. single binary, no dependencies. linux, osx, windows.","archived":false,"fork":false,"pushed_at":"2022-11-01T11:09:12.000Z","size":1660,"stargazers_count":1326,"open_issues_count":12,"forks_count":34,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-01T08:42:39.129Z","etag":null,"topics":["bar-chart","charts","json","jsonpath","line-chart","plot","terminal"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sgreben.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-03-22T09:05:31.000Z","updated_at":"2025-03-22T11:05:46.000Z","dependencies_parsed_at":"2022-08-15T22:31:28.783Z","dependency_job_id":null,"html_url":"https://github.com/sgreben/jp","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgreben%2Fjp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgreben%2Fjp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgreben%2Fjp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgreben%2Fjp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sgreben","download_url":"https://codeload.github.com/sgreben/jp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247821283,"owners_count":21001643,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bar-chart","charts","json","jsonpath","line-chart","plot","terminal"],"created_at":"2024-07-30T17:00:59.220Z","updated_at":"2025-04-08T10:24:19.332Z","avatar_url":"https://github.com/sgreben.png","language":"Go","funding_links":[],"categories":["Go","json"],"sub_categories":[],"readme":"# jp\n\nDead simple terminal plots from JSON (or CSV) data. Bar charts, line charts, scatter plots, histograms and heatmaps are supported.\n\n[![Build Status](https://travis-ci.org/sgreben/jp.svg?branch=master)](https://travis-ci.org/sgreben/jp)\n\n![Screenshot](docs/sin.png)\n\n\u003c!-- TOC --\u003e\n\n- [Get it](#get-it)\n- [Use it](#use-it)\n- [Examples](#examples)\n    - [Bar chart](#bar-chart)\n        - [Separate X and Y values](#separate-x-and-y-values)\n        - [XY pairs](#xy-pairs)\n        - [Y values only (X=index)](#y-values-only-xindex)\n        - [Array data](#array-data)\n    - [Line chart](#line-chart)\n        - [Array data, separate X and Y values](#array-data-separate-x-and-y-values)\n        - [Array data, XY pairs](#array-data-xy-pairs)\n        - [Y values only (X=index)](#y-values-only-xindex-1)\n    - [Scatter plot](#scatter-plot)\n    - [Histogram](#histogram)\n        - [Auto bin number](#auto-bin-number)\n        - [Fixed bin number](#fixed-bin-number)\n    - [2D Histogram (heatmap)](#2d-histogram-heatmap)\n    - [JSONLines input](#jsonlines-input)\n    - [CSV input](#csv-input)\n- [Screenshots](#screenshots)\n- [Licensing](#licensing)\n\n\u003c!-- /TOC --\u003e\n\n## Get it\n\n```bash\ngo get -u github.com/sgreben/jp/cmd/jp\n```\n\nOr [download the binary](https://github.com/sgreben/jp/releases/latest) from the releases page.\n\n```bash\n# Linux\ncurl -LO https://github.com/sgreben/jp/releases/download/1.1.12/jp_1.1.12_linux_x86_64.zip\nunzip jp_1.1.12_linux_x86_64.zip\n\n# OS X\ncurl -LO https://github.com/sgreben/jp/releases/download/1.1.12/jp_1.1.12_osx_x86_64.zip\nunzip jp_1.1.12_osx_x86_64.zip\n\n# Windows\ncurl -LO https://github.com/sgreben/jp/releases/download/1.1.12/jp_1.1.12_windows_x86_64.zip\nunzip jp_1.1.12_windows_x86_64.zip\n```\n\n## Use it\n\n`jp` reads JSON (or CSV) on stdin and prints plots to stdout.\n\n```text\nUsage of jp:\n  -type value\n    \tPlot type. One of [line bar scatter hist hist2d] (default line)\n  -x string\n    \tx values (JSONPath expression)\n  -y string\n    \ty values (JSONPath expression)\n  -xy string\n    \tx,y value pairs (JSONPath expression). Overrides -x and -y if given.\n  -bins uint\n        Number of histogram bins (default 0 (auto))\n  -input value\n        Input type. One of [json csv] (default json)\n  -height int\n    \tPlot height (default 0 (auto))\n  -width int\n    \tPlot width (default 0 (auto))\n  -canvas value\n    \tCanvas type. One of [full full-escape full-bw full-wb quarter braille auto] (default auto)\n```\n\n## Examples\n\n### Bar chart\n\n#### Separate X and Y values\n\n```bash\n$ \u003c examples/tcp-time.json jp -x ..Label -y ..Count -type bar\n\n         69\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████      21\n    █████████████ █████████████       7             2             1\n    █████████████ █████████████ ▄▄▄▄▄▄▄▄▄▄▄▄▄ ▁▁▁▁▁▁▁▁▁▁▁▁▁ ▁▁▁▁▁▁▁▁▁▁▁▁▁\n\n     46.85267ms    48.38578ms    49.91889ms     51.452ms     52.98511ms\n```\n\n\n#### XY pairs\n\n```bash\n$ \u003c examples/tcp-time.json jp -xy \"..[Label,Count]\" -type bar\n\n         69\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████      21\n    █████████████ █████████████       7             2             1\n    █████████████ █████████████ ▄▄▄▄▄▄▄▄▄▄▄▄▄ ▁▁▁▁▁▁▁▁▁▁▁▁▁ ▁▁▁▁▁▁▁▁▁▁▁▁▁\n\n     46.85267ms    48.38578ms    49.91889ms     51.452ms     52.98511ms\n```\n\n#### Y values only (X=index)\n\n```bash\n$ \u003c examples/tcp-time.json jp -y ..Count -type bar\n\n         69\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████\n    █████████████      21\n    █████████████ █████████████       7             2             1\n    █████████████ █████████████ ▄▄▄▄▄▄▄▄▄▄▄▄▄ ▁▁▁▁▁▁▁▁▁▁▁▁▁ ▁▁▁▁▁▁▁▁▁▁▁▁▁\n\n          0             1             2             3             4\n```\n\n#### Array data\n\n```bash\n$ echo '[[-3, 5], [-2, 0], [-1, 0.1], [0, 1], [1, 2], [2, 3]]' | jp -xy '[*][0, 1]' -type bar\n\n         5\n    ███████████\n    ███████████\n    ███████████                                                      3\n    ███████████                                                 ▄▄▄▄▄▄▄▄▄▄▄\n    ███████████                                          2      ███████████\n    ███████████                              1      ███████████ ███████████\n    ███████████                 0.1     ▄▄▄▄▄▄▄▄▄▄▄ ███████████ ███████████\n    ███████████      0      ▁▁▁▁▁▁▁▁▁▁▁ ███████████ ███████████ ███████████\n\n        -3          -2          -1           0           1           2\n```\n\n### Line chart\n\n#### Array data, separate X and Y values\n\n```bash\n$ jq -n '[range(200)/20 | [., sin]]' | jp -x '[*][0]' -y '[*][1]'\n  1.059955│         ▄▄▄▖                                       ▗▄▄▄▖\n          │       ▄▀▘  ▝▜▖                                   ▗▞▘   ▝▚\n          │      ▟       ▝▄                                 ▗▀       ▜\n          │     ▟         ▝▄                               ▗▀         ▜\n          │    ▐           ▝▖                             ▗▞           ▚▖\n          │   ▗▘            ▝▖                            ▞             ▚\n          │  ▗▘              ▚                           ▞               ▌\n          │  ▌                ▌                         ▗▘               ▝▖\n          │ ▞                 ▝▖                        ▌                 ▚\n          │▗▘                  ▚                       ▞                   ▌\n          │▌                    ▌                     ▗▘                   ▝▖\n          │                     ▝▖                   ▗▘                     ▐\n          │                      ▐                   ▞                       ▚\n          │                       ▚                 ▐                        ▝▖\n          │                       ▝▖               ▗▘                         ▐\n          │                        ▐               ▞                           ▚\n          │                         ▀▖            ▐\n          │                          ▚           ▄▘\n          │                           ▙         ▗▘\n          │                            ▚       ▄▘\n          │                             ▚▄   ▗▞▘\n          │                              ▝▀▀▀▘\n -1.059955└─────────────────────────────────────────────────────────────────────\n          0                                                                 9.95\n```\n\n#### Array data, XY pairs\n\n```bash\n$ jq -n '[range(200)/20 | [., sin]]' | jp -xy '[*][0, 1]'\n  1.059955│         ▄▄▄▖                                       ▗▄▄▄▖\n          │       ▄▀▘  ▝▜▖                                   ▗▞▘   ▝▚\n          │      ▟       ▝▄                                 ▗▀       ▜\n          │     ▟         ▝▄                               ▗▀         ▜\n          │    ▐           ▝▖                             ▗▞           ▚▖\n          │   ▗▘            ▝▖                            ▞             ▚\n          │  ▗▘              ▚                           ▞               ▌\n          │  ▌                ▌                         ▗▘               ▝▖\n          │ ▞                 ▝▖                        ▌                 ▚\n          │▗▘                  ▚                       ▞                   ▌\n          │▌                    ▌                     ▗▘                   ▝▖\n          │                     ▝▖                   ▗▘                     ▐\n          │                      ▐                   ▞                       ▚\n          │                       ▚                 ▐                        ▝▖\n          │                       ▝▖               ▗▘                         ▐\n          │                        ▐               ▞                           ▚\n          │                         ▀▖            ▐\n          │                          ▚           ▄▘\n          │                           ▙         ▗▘\n          │                            ▚       ▄▘\n          │                             ▚▄   ▗▞▘\n          │                              ▝▀▀▀▘\n -1.059955└─────────────────────────────────────────────────────────────────────\n          0                                                                 9.95\n```\n\n#### Y values only (X=index)\n\n```bash\n$ \u003c examples/tcp-time.json jp -y ..Duration\n 5.726165e+07│\n             │\n             │\n             │\n             │ ▗\n             │ ▟\n             │ █\n             │▐▝▖\n             │▐ ▌                                   ▌\n             │▐ ▌                                   ▌\n             │▌ ▌                                  ▐▚\n             │▌ ▌                ▗       ▗         ▐▐    ▌\n             │▘ ▌              ▖ ▐      ▞▀▖        ▐▐    ▌\n             │  ▚   ▐▚  ▗▀▖   ▗▚ ▌▌    ▗▘ ▌ ▖▗▀▌   ▌▐    █\n             │  ▐  ▛▌ ▚▖▞ ▚▐▖ ▞▐ ▌▌ ▗  ▐  ▐▟▐▞ ▚ ▗ ▌▝▖  ▐▐                      ▐\n             │  ▐ ▐    ▝  ▝▌▝▀ ▝▟ ▚▗▜  ▞     ▘ ▐▖█▗▘ ▌  ▐▐    ▗  ▄▖     ▄▖      ▌▌\n             │  ▝▚▐        ▘    ▘ ▐▘▝▖▄▌        ▝▝▟  ▀▀▚▟ ▌ ▖▞▘▌▐ ▚ ▗▄ ▐ ▚▄▖ ▄ ▄▘▌▞▄▄▀▚   ▄ ▄▗▞▖▞▄▄▚\n             │   ▝▌                  ▛            ▌     ▝ ▙▞▝  ▝▘ ▝▚▘ ▀▘   ▝▀ ▀  ▐▘    ▚▞▀ ▀ ▘ ▚▘\n             │\n             │\n             │\n             │\n 4.446018e+07└──────────────────────────────────────────────────────────────────────────────────────\n             0                                                                                    99\n```\n\n### Scatter plot\n\n```bash\n$ \u003c examples/mvrnorm.json jp -xy '..[x,y]' -type scatter\n\n 3.535344│                                 ⠄             ⠄\n         │                               ⠈⠂   ⠂       ⡀ ⠂\n         │                          ⠐⡀⡀⡂   ⠁  ⢄  ⠁ ⠠\n         │                            ⡀    ⠆     ⠈  ⠄⡀        ⠂\n         │           ⡀       ⠠  ⡀ ⡀ ⠄  ⡀⠐⠄⠁⠐ ⠠⢆⠠⠂⠂⠄⣀⢈  ⡀⠈ ⡀\n         │                     ⡀⠂⠂⠄ ⡀⠂⢔⠠ ⢤⢀⠌⣡⠁⠦⠄⠐⡐⠂⣀⠅⠁⠈ ⠂ ⠈⠁⠁      ⡀     ⠄\n         │  ⡀         ⢀  ⠄     ⠈⠠ ⠡⠑⠈⠈⢢⡁⡄⢈⠂⢡⠈⡄⡀⠈⠰⢉⡠⠘⢄⢃⠉⢀⣄⠢⠠⠄ ⠠ ⡀⠁ ⡀ ⠂\n         │                   ⠈ ⡂⠈⡁⠈⠄⢂⡹⡐⡡⡆⡥⣙⡶⡼⠱⣅⣅⣼⢗⡱⢐⣈⠑⢁⠂ ⢐⢁⠭⠘⡀  ⠈\n         │                ⠁ ⢀⠄⢈⠈⡰⢀⡥⠋⣧⣓⣚⡛⢲⣽⣝⣭⢙⣟⢲⡽⣋⡠⣿⣜⣵⠙⡦⠗ ⣡⠁⠁⠁⠄⠠ ⠄⡂\n         │                  ⠄⠌⠌⠡⠉⡐⢯⣵⡏⢵⡞⠂⢰⣽⣷⢛⣯⡣⣷⢭⣞⣏⠤⣾⢡⡻⠢⢊⢠⡠⠸⢄⣃⡀⢁⠐ ⠐⡀ ⠂    ⠄\n         │              ⠨ ⡈⠂ ⢀⢑⠄⣜⡾⣴⢨⠶⣪⣧⢿⣷⣷⡱⣿⣞⣲⣮⣮⣯⢾⡷⡬⡷⣺⠤⢏⡼⣨⢌⡬⠠⢂⢠⠒⠱⠆⡈\n         │          ⠈  ⠃ ⠄⡐⠂⠐⢀⢈⣂⡈⣳⣷⣜⢺⣿⣹⣷⣼⣯⡿⣃⣽⣿⢾⣟⣾⢵⣻⠯⡼⡃⣼⣗⢲⠪⠇⣉⠺ ⢱⠠⠙⡀⢐⠌\n         │          ⠄   ⠈⠊⠐⠑⠨⠚⢁⡊⢾⡶⢩⢿⣏⣽⢞⣼⣇⣵⣿⣿⣽⣿⢽⣭⠺⣿⣽⣳⢚⣾⣻⣾⣜⠩⡒⣃⠈⢢⠕⢂⢰⡀  ⡔⢀⢀    ⡀\n         │            ⢀⠂⠁⠂⠇ ⠂⠊⢀⠐⡘⡍⡇⣚⢸⢟⣯⢿⣳⡪⣫⣵⣿⣯⣿⢿⣷⣻⣖⣗⣻⣚⢥⡷⣕⣏⠶⠊⠄⣠⠰⠂⡄⠂ ⠄⠁\n         │             ⠠⢂ ⠘⠐⣀ ⣀⢡⢐⠔⢫⠯⢕⠫⠿⣹⢶⣾⡻⣭⣽⢗⠿⣹⣛⣺⣿⠯⢲⡼⣵⢉⣭⢐⣟⡍⠄⠈⠥⠄   ⠁   ⠄\n         │             ⠈⠂  ⠊⡀⡈⠢⡌⡠⠖⢤⠥⡑⣯⣾⣴⣯⡿⣯⣝⣯⣿⠧⣽⣒⢾⣼⣻⣛⣗⡹⡽⢪⠯⠒⡨⠈ ⠈⡐⢄ ⠂⠘⠠        ⠂\n         │              ⠰  ⡀⠃⠁⠠ ⠉⡈⡨⡱⢍⠌⠷⣯⠫⠬⡙⣴⣯⡣⡟⡮⠩⣫⠿⢞⢵⡰⠞⡂⠴ ⠕⢀⡂⠁ ⢀ ⠤   ⠈\n         │               ⢩⠂ ⠁⡄ ⢀⠲⢂⠑⢁⡘⠄⠵⣣⢑⢻⠨⡩⣌⠕⢮⣮⣋⢹⡁⣊⡃⠈⡕⡘⡠⠨⠄⡘⠨ ⠊⠁   ⠂\n         │          ⠐     ⢀ ⠈⠐⠔⠈  ⠁⢀⣀⡃⣊⢁⡘⠁⠛⠨ ⠒⡑⡀⠵⢙⠄⠡⠢⠃⠄⠋⠅ ⠥⠁⠠⢀ ⠄\n         │                  ⢀⢁ ⠆   ⠉⠁⠐ ⠄⠁⢑⡀⢀⠠⠑⢡⢊⠂⠑⠌⡅⠊⠄⠉⢈⡐  ⡀ ⠠   ⠂\n         │                      ⢀   ⠑ ⠂  ⡁ ⠌⢠⠈⠂⠄⠉⡃⠈⠄   ⠂⠠⠁ ⠄  ⢀ ⠠\n         │                             ⠐ ⠐ ⢁⠂⠂⠢⠠⠄⠔⠐       ⠁\n         │                         ⠢  ⠁    ⠂⠐  ⠐       ⠐   ⠈\n         │                           ⢀  ⠄⠈       ⠈\n         │                                        ⠐\n         │\n         │\n         │                                      ⠈\n-4.271874└─────────────────────────────────────────────────────────────────────\n          -4.08815                                                       3.79083\n```\n\n### Histogram\n\n#### Auto bin number\n\n```\n$ \u003c examples/mvrnorm.json jp -x ..x -type hist\n                                    684                                     1  [-3.27033,-2.69856)\n                                   █████▌                                   2  [-2.69856,-2.12679)\n                                   █████▌ 624                               3  [-2.12679,-1.55502)\n                                   ███████████                              4  [-1.55502,-0.983254)\n                               557 ███████████                              5  [-0.983254,-0.411485)\n                             ▐████████████████                              6  [-0.411485,0.160285)\n                             ▐████████████████                              7  [0.160285,0.732054)\n                             ▐████████████████                              8  [0.732054,1.30382)\n                             ▐████████████████                              9  [1.30382,1.87559)\n                             ▐████████████████ 404                          10 [1.87559,2.44736)\n                             ▐█████████████████████▌                        11 [2.44736,3.01913)\n                         314 ▐█████████████████████▌                        12 [3.01913,3.5909]\n                        ▄▄▄▄▄▟█████████████████████▌\n                        ███████████████████████████▌\n                        ███████████████████████████▌\n                        ███████████████████████████▌\n                        ███████████████████████████▌ 176\n                        █████████████████████████████████\n                    98  █████████████████████████████████\n                  ▐██████████████████████████████████████ 79\n    1     4   41  ▐███████████████████████████████████████████  14    4\n  ▁▁▁▁▁▁▁▁▁▁▁█████████████████████████████████████████████████▁▁▁▁▁▁▁▁▁▁▁\n\n    0     1    2     3    4     5    6     7    8     9   10    11   12\n```\n\n#### Fixed bin number\n\n```\n$ \u003c examples/mvrnorm.json jp -x ..x -type hist -bins 5\n                                         1652\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████\n                                    █████████████████       728\n                                    ██████████████████████████████████\n                          541       ██████████████████████████████████\n                   ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██████████████████████████████████\n                   ███████████████████████████████████████████████████\n                   ███████████████████████████████████████████████████\n                   ███████████████████████████████████████████████████\n                   ███████████████████████████████████████████████████\n         22        ███████████████████████████████████████████████████       57\n  ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███████████████████████████████████████████████████▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄\n\n  [-3.8421,-2.3555)[-2.3555,-0.8689)[-0.8689,0.6177)  [0.6177,2.1043)  [2.1043,3.5909]\n```\n\n### 2D Histogram (heatmap)\n\n```\n$ \u003c examples/mvrnorm.json jp -xy '..[x,y]' -type hist2d\n\n  3.3608│                   ····    ········    ····\n        │                   ····    ········    ····\n        │                   ····    ········    ····\n        │                   ················    ····\n        │                   ················    ····\n        │           ································\n        │           ································\n        │       ················░░░░░░░░░░░░················\n        │       ················░░░░░░░░░░░░················\n        │       ············▒▒▒▒▓▓▓▓▒▒▒▒▒▒▒▒░░░░············\n        │       ············▒▒▒▒▓▓▓▓▒▒▒▒▒▒▒▒░░░░············\n        │···············▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒············\n        │···············▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒············\n        │       ········░░░░▓▓▓▓▓▓▓▓████▓▓▓▓▒▒▒▒············\n        │       ········░░░░▓▓▓▓▓▓▓▓████▓▓▓▓▒▒▒▒············\n        │       ········░░░░▓▓▓▓▓▓▓▓████▓▓▓▓▒▒▒▒············\n        │   ············▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒············\n        │   ············▒▒▒▒▒▒▒▒▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒············\n        │       ············▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒················\n        │       ············▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒················\n        │           ····································\n        │           ····································\n        │               ····························\n        │               ····························\n        │               ····        ····        ····\n        │               ····        ····        ····\n        │                                   ····\n        │                                   ····\n -4.0045└───────────────────────────────────────────────────\n        -3.8421                                       3.5909\n```\n\n### JSONLines input\n\nIf your data consists of whitespace-separated JSON values (known as [JSONLines](http://jsonlines.org/) for newline separators), you can use the `-s` (\"slurp\") mode of `jq` to aggregate your data points into a single array before passing it to `jp`:\n\n```sh\n$ echo \"[0,1]\" \"[1,2]\" \"[2,3]\" | jq -s . | jp\n\n 3.16│\n     │                                                   ▄▄▀\n     │                                               ▄▄▀▀\n     │                                           ▄▄▀▀\n     │                                      ▗▄▄▀▀\n     │                                  ▗▄▞▀▘\n     │                              ▗▄▞▀▘\n     │                          ▗▄▞▀▘\n     │                      ▗▄▞▀▘\n     │                  ▗▄▞▀▘\n     │              ▗▄▞▀▘\n     │           ▄▄▀▘\n     │       ▄▄▀▀\n     │   ▄▄▀▀\n     │▄▀▀\n 0.94└──────────────────────────────────────────────────────\n     0                                                     2\n```\n\n### CSV input\n\n```\n$ \u003c examples/sin.csv jp -input csv -xy '[*][0,1]'\n\n  1.059955│       ▗▄▛▀▀▚▄▖                                    ▄▄▀▀▀▄▄\n          │     ▗▞▘      ▝▚▖                                ▄▀      ▝▀▄\n          │    ▟▘          ▝▄                             ▗▀          ▝▀▖\n          │  ▗▛              ▚▖                          ▞▘             ▝▙\n          │ ▄▘                ▀▖                        ▞                 ▚\n          │▞▘                  ▝▌                     ▗▛                   ▚▖\n          │                     ▝▚                   ▐▘                     ▝▄\n          │                       ▜▖                ▟▘                       ▝▄\n          │                        ▐▄             ▗▞                          ▝▚\n          │                          ▚▖          ▄▀\n          │                           ▀▙▖      ▄▛\n          │                             ▀▀▄▄▄▞▀▘\n -1.059955└─────────────────────────────────────────────────────────────────────\n          0                                                                 9.95\n```\n\n## Screenshots\n\n![Scatter plot](docs/scatter_plot.png)\n\n![Bar chart](docs/bar_chart.png)\n\n![Bar chart](docs/bar_chart_full_escape.png)\n\n![Line chart](docs/line_chart.png)\n\n![Heatmap](docs/hist2d_full_escape.png)\n\n## Licensing\n\n- Any original code is licensed under the [MIT License](./LICENSE).\n- Included portions of [github.com/buger/goterm](https://github.com/buger/goterm) are licensed under the MIT License.\n- Included portions of [github.com/kubernetes/client-go](https://github.com/kubernetes/client-go/tree/master/util/jsonpath) are licensed under the Apache License 2.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgreben%2Fjp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsgreben%2Fjp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgreben%2Fjp/lists"}