npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@asymmetrik/sentio

v6.0.0

Published

Custom d3 data visualizations

Downloads

215

Readme

@asymmetrik/sentio

Build Status

Sentio JS Provides a JavaScript library for visualizing and analyzing data. Sentio leverages several existing technologies, including D3.js. Now supports D3 v7

Table of Contents

Install

Install the package and its peer dependencies via npm:

npm install d3 @asymmetrik/sentio

To build from source:

git clone [email protected]:Asymmetrik/sentio.git
cd sentio
npm install
npm run build

The artifacts will be located in the ./dist dir.

Usage

Sentio is built for consumption using module systems or through global import.

To import Sentio into the global sentio variable:

<link rel="stylesheet" href="./node_modules/dist/sentio.css" />
<script src="./node_modules/d3/dist/d3.js" charset="utf-8"></script>
<script src="./node_modules/dist/sentio.js" charset="utf-8"></script>

Otherwise, you can directly import the components of the library if you're using Typescript or ES6 modules.

API

Sentio mimics d3's style of using closures to create resources and having shared getter/setter methods.

The general usage pattern is to create the chart and do some initial configuration:

var timeline = sentio.chartTimeline()
	.width(500)
	.height(100);

Then, you attach the chart to an element on the page, bind data and/or provide series configuration, and call the redraw() method to draw the chart:

var timelineDiv = d3.select('#chart');
timeline.init(timelineDiv)
	.data(...)
	.series(...)
	.redraw();

For specific components, refer to the documentation in the source files.

Chart Types

  • chartTimeline - Static timeline. Allows multiple configurable series, and optional brushing.
  • chartRealtimeTimeline - Realtime timeline. Same as the regular timeline, but it will automatically scroll the timeline at a realtime rate.
  • chartAutoBrushTimeline - Specialized brush timeline that updates its extent automatically in response to changes to the brush.
  • chartDonut - Donut chart. Allows custom color schemes and data series.
  • chartMatrix - Visualize two dimensional data using a matrix heatmap.
  • chartVerticalBars - Stacked bar chart that animates changes to the width of the bars as well as the order of the bars.

Helpers/Utilities

  • modelBins - Bin data into configurable bins.
  • controllerRealtimeBins - Manage a bin model for use with the realtime timeline.
  • modelExtent - Configurable manager of the extent of a data series.
  • modelMultiExtent - Aggregate multiple data series with one extent.
  • controllerResponsiveUnits - Generate timeline axis units that match the extent of the timeline.
  • timelineBrush - Helper for managing a brush on a timeline.

Contribute

PRs accepted. If you are part of Asymmetrik, please make contributions on feature branches off of the develop branch. If you are outside of Asymmetrik, please fork our repo to make contributions.

License

See LICENSE in repository for details.