All Projects → akngs → d3-boxplot

akngs / d3-boxplot

Licence: ISC License
d3js box plot plugin

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to d3-boxplot

pyextremes
Extreme Value Analysis (EVA) in Python
Stars: ✭ 89 (+323.81%)
Mutual labels:  statistics
karan36k.github.io
These are all the articles and pages I have in my data science website. I try to transcribe all I learn and post regularly. Please visit and feel free to email me for suggestions.
Stars: ✭ 22 (+4.76%)
Mutual labels:  statistics
billboard
🎤 Lyrics/associated NLP data for Billboard's Top 100, 1950-2015.
Stars: ✭ 53 (+152.38%)
Mutual labels:  d3js
interactive-simple-linear-regression
A PureScript, browser-based implementation of simple linear regression.
Stars: ✭ 15 (-28.57%)
Mutual labels:  statistics
mongodb-info
MongoDB Info - command line tool to get stats.
Stars: ✭ 13 (-38.1%)
Mutual labels:  statistics
quarantine-bot
WhatsApp bot powered by Twilio API to get through the quarantine. Latest COVID19 statistics, world news, inspirational quotes and cat photos.
Stars: ✭ 24 (+14.29%)
Mutual labels:  statistics
PyImpetus
PyImpetus is a Markov Blanket based feature subset selection algorithm that considers features both separately and together as a group in order to provide not just the best set of features but also the best combination of features
Stars: ✭ 83 (+295.24%)
Mutual labels:  statistics
Track-Stargazers
Have fun tracking your project's stargazers
Stars: ✭ 38 (+80.95%)
Mutual labels:  d3js
leaflet heatmap
简单的可视化湖州通话数据 假设数据量很大,没法用浏览器直接绘制热力图,把绘制热力图这一步骤放到线下计算分析。使用Apache Spark并行计算数据之后,再使用Apache Spark绘制热力图,然后用leafletjs加载OpenStreetMap图层和热力图图层,以达到良好的交互效果。现在使用Apache Spark实现绘制,可能是Apache Spark不擅长这方面的计算或者是我没有设计好算法,并行计算的速度比不上单机计算。Apache Spark绘制热力图和计算代码在这 https://github.com/yuanzhaokang/ParallelizeHeatmap.git .
Stars: ✭ 13 (-38.1%)
Mutual labels:  d3js
turkeyvisited
Mark the cities you have visited in Turkey and share the map!
Stars: ✭ 82 (+290.48%)
Mutual labels:  d3js
confstat-bot
Statistics for telegram groups
Stars: ✭ 26 (+23.81%)
Mutual labels:  statistics
d3.geometer
[NOT MAINTAINED] A D3js library for drawing polytopes, angles, coordinates, geometries and more.
Stars: ✭ 18 (-14.29%)
Mutual labels:  d3js
rcvis
Understandable visualizations for Ranked-Choice Voting elections: sankey, bargraphs, tabular formats, and automatically-generated videos with text-to-speech using AWS Polly.
Stars: ✭ 13 (-38.1%)
Mutual labels:  d3js
parcours-r
Valise pédagogique pour la formation à R
Stars: ✭ 25 (+19.05%)
Mutual labels:  statistics
Euler
The open-source computational framework for the Swift language
Stars: ✭ 37 (+76.19%)
Mutual labels:  statistics
treemap-chart
A treemap interactive chart web component for visualizing hierarchical data
Stars: ✭ 27 (+28.57%)
Mutual labels:  d3js
Data-Analyst-Nanodegree
Kai Sheng Teh - Udacity Data Analyst Nanodegree
Stars: ✭ 42 (+100%)
Mutual labels:  statistics
BayesHMM
Full Bayesian Inference for Hidden Markov Models
Stars: ✭ 35 (+66.67%)
Mutual labels:  statistics
ThunderStats
This addon adds awesome statistics to your beloved Thunderbird!
Stars: ✭ 34 (+61.9%)
Mutual labels:  statistics
AMIDD
Introduction to Applied Mathematics and Informatics in Drug Discovery (AMIDD)
Stars: ✭ 13 (-38.1%)
Mutual labels:  statistics

d3-boxplot

d3js plugin for box-and-whisker plot.

d3-boxplot

Installing

If you use NPM, npm install d3-boxplot. Otherwise, download the latest release.

Usage

Here's a minimal code snippet:

let data = [1, 2, 3, 4, 5]
let stats = d3.boxplotStats(data)
let x = d3.scaleLinear()
  .domain(d3.extent(data))
  .range([0, 300])
let plot = d3.boxplot().scale(x)
d3.select('svg').datum(stats).call(plot)

Visit this page to see more examples.

API Reference

# d3.boxplot()

Constructs a new box plot generator with the default settings.

# d3.boxplotStats(data, [accessor])

Calculates descriptive statistics such as five-number summeries, IQR, and inner/outer fences of given sorted array data. If the type of elements in data is not a number, you should provide an accessor function as the second argument and the array should be sorted according to the accessor.

If you have multiple batches of data, you may use Array.map() to turn them into box plot statistics:

let batches = [
  [1,2,3,4,5],
  [6,7,8,9,10]
]
let stats = batches.map(function(b) {return d3.boxplotStats(b)})

Now you can draw small-multiples of box plots using conventional d3 code:

d3.select('svg').selectAll('g.plot').data(stats)
  .join('g')
  .attr('transform', function(d, i) {return 'translate(...)'})
  .call(d3.boxplot())

Box plot statistics are also useful to render additional annotations on top of a box plot, like this:

Annotated box plot

Visit Box plot explained to see the code.

# boxplot.vertical([vertical])

Sets or returns vertical mode. The default value is false which means a horizontal mode.

# boxplot.scale([scale])

Sets or returns scale. The default value is d3.scaleLinear() instance with domain [0, 1], and range [0, 1].

# boxplot.bandwidth([bandwidth])

Sets or returns bandwidth. Bandwidth is a pixel value specifying a thickness of the plot. The default value is 20.

# boxplot.boxwidth([boxwidth])

Sets or returns boxwidth. Boxwidth is a pixel value specifying a thickness of the IQR box. The default value is 20. By setting this value to 3 and hide inner dots by call showInnerDots(false), you can render minimalistic box plots mimic Edward Tufte's style:

Minimalistic box plot

# boxplot.showInnerDots([flag])

Sets or returns showInnerDots flag. Set it true to show all data dots, or false to show only outliers (and far-outs). The default value is true.

# boxplot.symbol([symbol])

Sets or returns symbol. The default value is boxplotSymbolDot. The following list shows possible options:

  • boxplotSymbolDot
  • boxplotSymbolTick

boxplotSymbolTick renders thin lines instead of small circles:

Ticks

# boxplot.opacity([opacity])

Sets of returns opacity. The default value is 0.8. Partial transparency helps you to reveal dots under the box.

# boxplot.jitter([jitter])

Sets or returns jittering value. Actual value used is bandwidth * jitter. Set the value 0.0 to disable jittering. The default value is 0.5. Please note that the jittering only works with symbol(boxplotSymbolTick).

# boxplot.key([key])

Sets or returns key function for object constancy. The default value is undefined.

Development

To bump version run the followings after commit all changes:

npm version vx.y.z
npm publish
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].