0.4.0 • Published 9 months ago

simple-sparkline-chart v0.4.0

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

šŸ“ˆ Simple SparkLine Chart

A lightweight, customizable, and easy-to-use SparkLine chart library with tooltip and flexible options, written in TypeScript.

DEMO

CodePen šŸ‘€

Production šŸ‘€

Library

NPMJS šŸ“¦

UNPKG </>

GITHUB šŸ”®

šŸš€ Features

  • šŸ”„ Lightweight - Small footprint and blazing fast rendering.
  • šŸŽØ Customizable - Control colors, sizes, tooltips, and more.
  • šŸŽÆ TypeScript Support - Fully typed for better development experience.
  • šŸ“¦ Multiple Formats - Available as CommonJS, ESModule, and a global script for easy CDN usage.

šŸ“¦ Installation

Using npm:

npm install simple-sparkline-chart

Using CDN:

<script src="https://www.unpkg.com/simple-sparkline-chart"></script>

You can then use it via the global SimpleSparkLineChart:

<script>
  new SimpleSparkLineChart(".chart");
</script>

šŸ“š Usage

1ļøāƒ£ Basic Example

<div
  class="sparkline"
  data-values="1,2,3,4,5,6,7"
  data-width="200"
  data-height="40"
></div>

<script>
  new SimpleSparkLineChart(".sparkline");
</script>

This will create a basic SparkLine chart using the specified data-values.

2ļøāƒ£ With Custom Options

<div
  class="sparkline"
  data-values="0.5,1.5,2.3,3.8,2.9,3.4"
  data-width="300"
  data-height="60"
  data-color-stroke="#00f"
  data-filled="0.3"
  data-tooltip="top"
  data-aria-label="My SparkLine Chart"
></div>

<script>
  new SimpleSparkLineChart(".sparkline");
</script>

šŸ”§ Data Attributes

AttributeTypeDefaultDescription
data-valuesstringnull (Required)A comma-separated list of values or JSON data to plot.
data-widthnumber200The width of the chart in pixels.
data-heightnumberProportional to widthThe height of the chart in pixels. Automatically calculated based on width, maintaining a proportional aspect ratio.
data-color-strokestring#8956ffThe color of the chart line (stroke).
data-fillednumber(none)Defines the opacity of the fill area under the line if set. If not provided, no fill is displayed.
data-tooltipstringtopTooltip position: "top" or "bottom". Tooltip is enabled if this attribute is set.
data-aria-labelstringSimple SparkLine ChartAccessible label for the chart.
data-localestringUser's localeThe locale used for formatting dates in tooltips (if using timestamp data).

šŸ§‘ā€šŸ’» API

You can initialize the chart with the SimpleSparkLineChart constructor, and it automatically processes all matching elements.

Constructor

new SimpleSparkLineChart(selector: string);

  • selector: A CSS selector string to target the elements where the chart will be rendered.

šŸŽØ Customization

You can customize the following:

  1. Stroke and Fill: Set your own colors for the line and the area below it with data-color-stroke and data-filled.
  2. Dimensions: Control the width and height of the chart using data-width and data-height.
  3. Tooltips: Enable or disable tooltips with data-tooltip, and adjust their position with data-tooltip-position.

šŸ“Š Example of Object Data

You can pass an array of objects with timestamps and values:

<div
  class="sparkline"
  data-values='[
        {"timestamp":1693526400000,"value":0.93},
        {"timestamp":1693612800000,"value":0.9315}
    ]'
  data-tooltip="top"
></div>

<script>
  new SimpleSparkLineChart(".sparkline");
</script>

šŸš€ Optimized for Performance

  • Minimized for production: The library is optimized to deliver minimal JS overhead.
  • Supports all modern browsers: Works in all major browsers including Chrome, Firefox, Safari, and Edge.

šŸ”„ CDN Usage

For quick usage without installing npm dependencies:

<script src="https://www.unpkg.com/simple-sparkline-chart"></script>

šŸ”§ Development

To build the project locally:

Install dependencies

npm install

Run the development server

npm start

Build the project

npm run build

Run tests

npm run test

šŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

šŸ’¬ Feedback and Contributions

Feel free to open an issue if you find a bug or have a feature request. Pull requests are welcome! šŸ™Œ

Hope you enjoy using Simple SparkLine Chart! šŸš€āœØ

0.3.9

9 months ago

0.3.8

9 months ago

0.4.0

9 months ago

0.3.6

10 months ago

0.3.5

10 months ago

0.3.4

10 months ago

0.3.3

10 months ago

0.3.2

10 months ago

0.3.1

10 months ago

0.3.0

10 months ago

0.2.3

10 months ago

0.2.2

10 months ago

0.2.1

10 months ago

0.2.0

10 months ago