Socket
Socket
Sign inDemoInstall

@h5web/lib

Package Overview
Dependencies
22
Maintainers
1
Versions
151
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @h5web/lib

Data visualization toolkit


Version published
Weekly downloads
2.2K
decreased by-10.73%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

H5Web Visualization Components

Docs Version

H5Web is a collection of React components to visualize and explore data. It consists of two main packages:

While used in @h5web/app with HDF5 files, @h5web/lib visualization components are not tied to HDF5 and can be used to visualize data from any source.

For more information, visit the Storybook documentation site.

Prerequisites

The react and react-dom dependencies must be installed in your project. Note that as of version 10, @h5web/lib requires React 18.

This package supports TypeScript out of the box without the need to install a separate @types/ package.

Getting started 🚀

npm install @h5web/lib three @react-three/fiber ndarray
import '@h5web/lib/dist/styles.css';

import React from 'react';
import ndarray from 'ndarray';
import { HeatmapVis, getDomain } from '@h5web/lib';

// Initialise source 2D array
const values = [
  [0, 1, 2],
  [3, 4, 5],
];

// Flatten source array
const flatValues: number[] = values.flat(Infinity);

// Convert to ndarray and get domain
const dataArray = ndarray(flatValues, [2, 3]);
const domain = getDomain(dataArray);

function MyApp() {
  return (
    <div style={{ display: 'flex', height: '30rem' }}>
      <HeatmapVis dataArray={dataArray} domain={domain} />
    </div>
  );
}

export default MyApp;

If your bundler supports it (e.g. webpack 5), you may be able to shorten the stylesheet import path as follows:

import '@h5web/lib/styles.css';

Examples

The following code sandboxes demonstrate how to set up and use @h5web/lib with various front-end development stacks:

Browser support

H5Web works out of the box on Firefox 78 ESR.

Support for Firefox 68 ESR is possible by polyfilling the ResizeObserver API. One easy way to do this is with polyfill.io:

<head>
  <!-- title, meta, link, etc. -->
  <script src="https://polyfill.io/v3/polyfill.min.js?features=default%2CResizeObserver"></script>
</head>

Older versions of Firefox are not supported.

FAQs

Last updated on 18 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc