nb-hdr-plotter


Namenb-hdr-plotter JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/hemidactylus/nb_hdr_plotter
SummaryTool to plot HDR histogram data and histostats data generated by NoSQLBench
upload_time2023-02-04 23:41:23
maintainer
docs_urlNone
authorStefano Lottini
requires_python>=3.8, <4
licenseLICENSE.txt
keywords nosqlbench plotting hdr
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # NB HDR plotter

A tool to plot
[HDR histogram](http://hdrhistogram.org)
data (and `histostats` output) from
[NoSQLBench](https://docs.nosqlbench.io/).

## Setup

### Pre-requisites

Python 3.8+ is required.

### Installation

Install with

```
pip install nb-hdr-plotter
```

## Quickstart

Assuming you have an `HDR` histogram file to plot:

```
nb_hdr_plotter                          \
    hdr_data.log                        \
    -b -c -s                            \
    -p SampleData                       \
    -d SampleDump                       \
    -m cqlkeyvalue_default_main.result
```

Assuming you have a `histostats` output file to plot:

```
histostats_plotter                      \
    histostats.log                      \
    -p HistostatsSample                 \
    -m cqlkeyvalue_default_main.result
```

The Github repository contains
[sample plots](https://github.com/hemidactylus/nb_hdr_plotter/tree/main/sample_data)
obtained with these tools.

## More options

- `nb_hdr_plotter` can dump to a `txt` table file (as opposed to a PNG image);
- it can selectively plot histogram, percentiles, stability plot;
- it can interactively help you select the metric to plot;
- it can optionally refrain from time unit conversion and overwrite files.

Check out the online help:
```
$> nb_hdr_plotter -h
usage: nb_hdr_plotter [-h] [-i] [-m METRICTAG] [-b] [-c] [-s] [-p PLOTFILEROOT] [-d DUMPFILEROOT] [-f] [-r] filename

Manipulate HDR data generated in NoSQLBench.

positional arguments:
  filename              HDR input data

optional arguments:
  -h, --help            show this help message and exit
  -i, --inspect         Detailed input breakdown

Analysis tasks:
  -m METRICTAG, --metric METRICTAG
                        Work on the specified metric tag (interactive choice if not provided)
  -b, --baseplot        Create standard distribution plot
  -c, --percentiles     Create percentile analysis
  -s, --stability       Perform stability analysis (per-slice plots)

Output control:
  -p PLOTFILEROOT, --plot PLOTFILEROOT
                        Create plot images (with given file root)
  -d DUMPFILEROOT, --dump DUMPFILEROOT
                        Dump to data files (with given file root)
  -f, --force           Overwrite existing file(s) if necessary
  -r, --raw             Keep raw values found in histograms (no unit conversions)
```

- `histostats_plotter` can include/exclude plotting the "max" alongside the other percentiles;
- it offers interactive selection of the metric to plot;
- it optionally overwrites existing files:


```
$> histostats_plotter -h
usage: histostats_plotter [-h] [-m METRICTAG] [-p PLOTFILEROOT] [--include-max] [-f] filename

Quickly plot "--log-histostats" output from NoSQLBench to an image.

positional arguments:
  filename              Histostats input file

optional arguments:
  -h, --help            show this help message and exit
  -m METRICTAG, --metric METRICTAG
                        Work on the specified metric tag (interactive choice if not provided)
  -p PLOTFILEROOT, --plot PLOTFILEROOT
                        Create plot image (with given file root), automatic if not provided
  --include-max         Include "max" to plotting
  -f, --force           Overwrite existing file if necessary
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/hemidactylus/nb_hdr_plotter",
    "name": "nb-hdr-plotter",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8, <4",
    "maintainer_email": "",
    "keywords": "nosqlbench,plotting,hdr",
    "author": "Stefano Lottini",
    "author_email": "stefano.lottini@datastax.com",
    "download_url": "https://files.pythonhosted.org/packages/57/72/5d936ab382ea03fcb1d770766665652efbaa7939f0c6708bdd9a10bdc0b9/nb_hdr_plotter-0.1.2.tar.gz",
    "platform": null,
    "description": "# NB HDR plotter\n\nA tool to plot\n[HDR histogram](http://hdrhistogram.org)\ndata (and `histostats` output) from\n[NoSQLBench](https://docs.nosqlbench.io/).\n\n## Setup\n\n### Pre-requisites\n\nPython 3.8+ is required.\n\n### Installation\n\nInstall with\n\n```\npip install nb-hdr-plotter\n```\n\n## Quickstart\n\nAssuming you have an `HDR` histogram file to plot:\n\n```\nnb_hdr_plotter                          \\\n    hdr_data.log                        \\\n    -b -c -s                            \\\n    -p SampleData                       \\\n    -d SampleDump                       \\\n    -m cqlkeyvalue_default_main.result\n```\n\nAssuming you have a `histostats` output file to plot:\n\n```\nhistostats_plotter                      \\\n    histostats.log                      \\\n    -p HistostatsSample                 \\\n    -m cqlkeyvalue_default_main.result\n```\n\nThe Github repository contains\n[sample plots](https://github.com/hemidactylus/nb_hdr_plotter/tree/main/sample_data)\nobtained with these tools.\n\n## More options\n\n- `nb_hdr_plotter` can dump to a `txt` table file (as opposed to a PNG image);\n- it can selectively plot histogram, percentiles, stability plot;\n- it can interactively help you select the metric to plot;\n- it can optionally refrain from time unit conversion and overwrite files.\n\nCheck out the online help:\n```\n$> nb_hdr_plotter -h\nusage: nb_hdr_plotter [-h] [-i] [-m METRICTAG] [-b] [-c] [-s] [-p PLOTFILEROOT] [-d DUMPFILEROOT] [-f] [-r] filename\n\nManipulate HDR data generated in NoSQLBench.\n\npositional arguments:\n  filename              HDR input data\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -i, --inspect         Detailed input breakdown\n\nAnalysis tasks:\n  -m METRICTAG, --metric METRICTAG\n                        Work on the specified metric tag (interactive choice if not provided)\n  -b, --baseplot        Create standard distribution plot\n  -c, --percentiles     Create percentile analysis\n  -s, --stability       Perform stability analysis (per-slice plots)\n\nOutput control:\n  -p PLOTFILEROOT, --plot PLOTFILEROOT\n                        Create plot images (with given file root)\n  -d DUMPFILEROOT, --dump DUMPFILEROOT\n                        Dump to data files (with given file root)\n  -f, --force           Overwrite existing file(s) if necessary\n  -r, --raw             Keep raw values found in histograms (no unit conversions)\n```\n\n- `histostats_plotter` can include/exclude plotting the \"max\" alongside the other percentiles;\n- it offers interactive selection of the metric to plot;\n- it optionally overwrites existing files:\n\n\n```\n$> histostats_plotter -h\nusage: histostats_plotter [-h] [-m METRICTAG] [-p PLOTFILEROOT] [--include-max] [-f] filename\n\nQuickly plot \"--log-histostats\" output from NoSQLBench to an image.\n\npositional arguments:\n  filename              Histostats input file\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -m METRICTAG, --metric METRICTAG\n                        Work on the specified metric tag (interactive choice if not provided)\n  -p PLOTFILEROOT, --plot PLOTFILEROOT\n                        Create plot image (with given file root), automatic if not provided\n  --include-max         Include \"max\" to plotting\n  -f, --force           Overwrite existing file if necessary\n```\n",
    "bugtrack_url": null,
    "license": "LICENSE.txt",
    "summary": "Tool to plot HDR histogram data and histostats data generated by NoSQLBench",
    "version": "0.1.2",
    "split_keywords": [
        "nosqlbench",
        "plotting",
        "hdr"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "772287c438e71452e2bba18bc82e217815482a83d76e1d912c9ce606735c9050",
                "md5": "f330d06e3bbea8f8c3e311292970ba32",
                "sha256": "2e7204ce313d9e3a7b165583e753698a0db784cb3a6c7cdd85de651c502df719"
            },
            "downloads": -1,
            "filename": "nb_hdr_plotter-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f330d06e3bbea8f8c3e311292970ba32",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8, <4",
            "size": 17653,
            "upload_time": "2023-02-04T23:41:21",
            "upload_time_iso_8601": "2023-02-04T23:41:21.399408Z",
            "url": "https://files.pythonhosted.org/packages/77/22/87c438e71452e2bba18bc82e217815482a83d76e1d912c9ce606735c9050/nb_hdr_plotter-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "57725d936ab382ea03fcb1d770766665652efbaa7939f0c6708bdd9a10bdc0b9",
                "md5": "a5405da33ec2229e1fab1bb776842e0f",
                "sha256": "94e7e105dbca48446e9b3061fb1f6efcd208cda5a2edea398495f70813703396"
            },
            "downloads": -1,
            "filename": "nb_hdr_plotter-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "a5405da33ec2229e1fab1bb776842e0f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8, <4",
            "size": 14839,
            "upload_time": "2023-02-04T23:41:23",
            "upload_time_iso_8601": "2023-02-04T23:41:23.127743Z",
            "url": "https://files.pythonhosted.org/packages/57/72/5d936ab382ea03fcb1d770766665652efbaa7939f0c6708bdd9a10bdc0b9/nb_hdr_plotter-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-02-04 23:41:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "hemidactylus",
    "github_project": "nb_hdr_plotter",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "nb-hdr-plotter"
}
        
Elapsed time: 0.72533s