mirror of
				https://github.com/reduxjs/redux-devtools.git
				synced 2025-10-30 23:47:35 +03:00 
			
		
		
		
	|  | ||
|---|---|---|
| .. | ||
| src | ||
| .babelrc | ||
| .eslintignore | ||
| .eslintrc.js | ||
| CHANGELOG.md | ||
| LICENSE.md | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| tsconfig.webpack.json | ||
| webpack.config.umd.ts | ||
d3tooltip
This tooltip aims for a minimal yet highly configurable API. It has a long way to go, but the essentials are there.
It was created by @romseguy and merged from romseguy/d3tooltip.
Installation
npm install d3-state-visualizer
Quick usage
import d3 from 'd3';
import d3tooltip from 'd3tooltip';
const DOMNode = document.getElementById('chart');
const root = d3.select(DOMNode);
const vis = root.append('svg');
let options = {
  offset: {left: 30, top: 10}
};
vis.selectAll('circle').data(someData).enter()
  .append('circle')
  .attr('r', 10)
  .call(
    d3tooltip(d3, 'tooltipClassName', options)
      .text((d, i) => toStringOrHtml(d))
      .attr({ 'class': 'anotherClassName' })
      .style({ 'min-width': '50px', 'border-radius: 5px' })
  )
  .on({
    mouseover(d, i) {
      d3.select(this).style({
        fill: 'skyblue'
      });
    },
    mouseout(d, i) {
      d3.select(this).style({
        fill: 'black'
      });
    }
  });
API
| Option | Type | Default | Description | 
|---|---|---|---|
| root | DOM.Element | body | The tooltip will be added as a child of that element. You can also use a D3 selection | 
| left | Number | undefined | Sets the tooltip xabsolute position instead of the mousexposition, relative to therootelement | 
| top | Number | undefined | Sets the tooltip yabsolute position instead of the mouseyposition, relative to therootelement | 
| offset | Object | {left: 0, top: 0} | Sets the distance, starting from the cursor position, until the tooltip is rendered. Warning: only applicable if you don't provide a leftortopoption |