horiz-gauge
v0.10.3
Published
Draw a horizontal svg progress gauge
Downloads
33
Readme
Table of Contents
HorizGauge
Draw a horizontal svg gauge.
Play with the settings of the horiz-gauge by visiting the horiz-gauge playground.
Install in your Node project with
and use it inside your code via
or, alternatively
Create the new gauge objects via
Parameters
settings
Object The configuration object for the gauge. All data for the gauge is provided with this object.settings.svg
Object The DOM tree element, wich must be an svg tag. The gauge will be attached to this DOM tree element. Example:settings.svg = document.getElementById('gauge');'gauge' is the id of a svg tag.settings.id
String? The id of a domtree svg element, to which the gauge will be bound to. The id will only be used in case settings.svg is not provided.settings.fraction
Number? Progress indication for the gauge. A value of 0 is indicating no progress, 1.0 is indicating completion. Default is 0.0settings.fractionLabel
String? A label to show for the progress fraction. Default is ''.settings.fractionColor
String? The color for the fraction indication. Default is '#222'settings.fractionExceedColor
String? The color to use in case fraction > 1.0.settings.emptyColor
String? Color for the non-progress area of the gauge. Default is borderColorsettings.emptyPattern
Boolean? When true, the empty area will be a pattern made of fractionColor and emptyColorsettings.progressWidth
Number? Width in pixels for the progress gauge without borders and margins. Default is 200.settings.progressHeight
Number? Height in pixels for the progress gauge without borders and margins. Default is fontSize + 2.settings.borderColor
String? Color of the border of the progress gauge. Default is '#ccc'settings.borderWidth
Number? Width in pixels for the border of the progress gauge. Default is 0settings.fontSize
Number? Size in pixels for all labels. Default is 16settings.fontFamily
String? The font to use for all labels. Default is sans-serif.settings.margin
{top: Number, right: Number, bottom: Number, left: Number}? The margin for the gauge. Markers and labels are drawn inside of the margin. Default values are:settings.margin = { top: 0, right: 0, bottom: 0, left: 0 }settings.leftLabel
{label: String, color: String, textAnchor: String}? A label to put to the left of the progress gauge. Must fit into the left margin. Allowed values for textAnchor are 'start', 'middle', 'end'. Default values are:settings.leftLabel = { label: '', color: '#222', textAnchor: 'start' }settings.rightLabel
{label: String, color: String, textAnchor: String}? A label to put to the right of the progress gauge. Must fit into the right margin. Allowed values for textAnchor are 'start', 'middle', 'end'. Default values are:settings.rightLabel = { label: '', color: '#222', textAnchor: 'start' }settings.markers
Array<{fraction: Number, label: String, color: String, position: String, distance: Number, textAnchor: String}>? Highlight fractions outside of the gauge. Each marker is an object with a fraction for the marker and some optional settings. A marker must fit into the margins of the gauge. Allowed values for position are 'top', 'bottom' Allowed values for textAnchor are 'start', 'middle', 'end' Example:settings.markers = [ { fraction: 0.0, label: 'G1', distance: 20 }, { fraction: 0.2, label: 'G2' }, { fraction: 0.8, label: 'G3', color: 'lightgray', position: 'bottom', textAnchor: 'start'}];settings.dividers
Array<{fraction: Number, color: String}>? Highlight fractions inside of the gauge. Each divider is an object with a fraction and an optional color. The default for color is emptyColor. Example:settings.markers = [ { fraction: 0.1 }, { fraction: 0.2, color: 'green' }, { fraction: 0.8, color: 'red'}];
draw
Draw the gauge.
Parameters
settings
Object? The configuration object for the gauge. Optional. If provided, will overwrite the settings object already given to the constructor.
remove
Clear the gauge.
imageSource
Draw the gauge and return the result as a string which can be assigned to the SRC attribute of an HTML IMG tag.
Returns string
svgSource
Draw the gauge and return the result as a SVG tag string.
Returns string