Skip to main content

Build and analyze a network model of hazards, causes, and controls

Project description

hazard-map

screenshot

Build a network model from spreadsheets of hazard, cause, and control mappings and carry out useful analyses.

Overview

This is a simple command-line tool that takes an Excel workbook with tables of mappings and creates a network model to use for analyses and visualization.

Installation

Install the command-line application from PyPI with pip:

pip install hazard-map

Usage

Use the -h flag to see the available options:

hazard-map -h
usage: hazard-map [-h] [-o OUTPUT_DIRECTORY] [-d PLOT_DPI] [-j | --output-json | --no-output-json] input_workbook

Build and analyze a network model of hazards, causes, and controls

positional arguments:
  input_workbook        The hazard mapping excel file to evaluate

options:
  -h, --help            show this help message and exit
  -o OUTPUT_DIRECTORY, --output-directory OUTPUT_DIRECTORY
                        Set a directory for the script to save its outputs to
  -d PLOT_DPI, --plot-dpi PLOT_DPI
                        Set a custom DPI (quality) for the plot output
  -j, --output-json, --no-output-json
                        Save a json description of the mappings alongside the hazard log

Pass an Excel workbook (xlsx) file with hazard-cause and cause-control mappings (indicated by a "Y" at the intersection of row/column pair that map onto one-another) in worksheets named "HazardCause Mapping" and "CauseControl Mapping" respectively:

hazard-map our_mappings.xlsx

See the test mappings for an example of a compatible document.

Development

If you want to develop this project further or just set it up so you can modify the source code (to work with a different matrix format, for example), clone this repo:

git clone https://gitlab.com/thom-cameron/hazard-map
cd hazard-map

Packaging and dependency management for this project are handled by poetry. Install poetry, or, if you use nix, start up a shell with everything you need:

nix-shell

Then, get the code running:

# install dependencies
poetry install

# run the test suite
poetry run pytest

# run the application
poetry run hazard-map

# or enter an interactive shell in a properly configured virtual environment
poetry run python

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

hazard_map-0.1.5.tar.gz (6.3 kB view hashes)

Uploaded Source

Built Distribution

hazard_map-0.1.5-py3-none-any.whl (7.3 kB view hashes)

Uploaded Python 3

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