# Treemap

Original D3 demo at https://bl.ocks.org/mbostock/4063582

NodeLinkTreeLayoutflare.vis.operator.layout.NodeLinkTreeLayout 12,870RadialTreeLayoutflare.vis.operator.layout.RadialTreeLayout 12,348CirclePackingLayoutflare.vis.operator.layout.CirclePackingLayout 12,003CircleLayoutflare.vis.operator.layout.CircleLayout 9,317TreeMapLayoutflare.vis.operator.layout.TreeMapLayout 9,191StackedAreaLayoutflare.vis.operator.layout.StackedAreaLayout 9,121ForceDirectedLayoutflare.vis.operator.layout.ForceDirectedLayout 8,411Layoutflare.vis.operator.layout.Layout 7,881AxisLayoutflare.vis.operator.layout.AxisLayout 6,725IcicleTreeLayoutflare.vis.operator.layout.IcicleTreeLayout 4,864DendrogramLayoutflare.vis.operator.layout.DendrogramLayout 4,853BundledEdgeRouterflare.vis.operator.layout.BundledEdgeRouter 3,727IndentedTreeLayoutflare.vis.operator.layout.IndentedTreeLayout 3,174PieLayoutflare.vis.operator.layout.PieLayout 2,728RandomLayoutflare.vis.operator.layout.RandomLayout 870Labelerflare.vis.operator.label.Labeler 9,956RadialLabelerflare.vis.operator.label.RadialLabeler 3,899StackedAreaLabelerflare.vis.operator.label.StackedAreaLabeler 3,202PropertyEncoderflare.vis.operator.encoder.PropertyEncoder 4,138Encoderflare.vis.operator.encoder.Encoder 4,060ColorEncoderflare.vis.operator.encoder.ColorEncoder 3,179SizeEncoderflare.vis.operator.encoder.SizeEncoder 1,830ShapeEncoderflare.vis.operator.encoder.ShapeEncoder 1,690Distortionflare.vis.operator.distortion.Distortion 6,314BifocalDistortionflare.vis.operator.distortion.BifocalDistortion 4,461FisheyeDistortionflare.vis.operator.distortion.FisheyeDistortion 3,444FisheyeTreeFilterflare.vis.operator.filter.FisheyeTreeFilter 5,219VisibilityFilterflare.vis.operator.filter.VisibilityFilter 3,509GraphDistanceFilterflare.vis.operator.filter.GraphDistanceFilter 3,165OperatorListflare.vis.operator.OperatorList 5,248OperatorSequenceflare.vis.operator.OperatorSequence 4,190OperatorSwitchflare.vis.operator.OperatorSwitch 2,581Operatorflare.vis.operator.Operator 2,490SortOperatorflare.vis.operator.SortOperator 2,023IOperatorflare.vis.operator.IOperator 1,286EdgeRendererflare.vis.data.render.EdgeRenderer 5,569ShapeRendererflare.vis.data.render.ShapeRenderer 2,247ArrowTypeflare.vis.data.render.ArrowType 698IRendererflare.vis.data.render.IRenderer 353Dataflare.vis.data.Data 20,544DataListflare.vis.data.DataList 19,788NodeSpriteflare.vis.data.NodeSprite 19,382ScaleBindingflare.vis.data.ScaleBinding 11,275DataSpriteflare.vis.data.DataSprite 10,349TreeBuilderflare.vis.data.TreeBuilder 9,930Treeflare.vis.data.Tree 7,147EdgeSpriteflare.vis.data.EdgeSprite 3,301TooltipControlflare.vis.controls.TooltipControl 8,435SelectionControlflare.vis.controls.SelectionControl 7,862PanZoomControlflare.vis.controls.PanZoomControl 5,222HoverControlflare.vis.controls.HoverControl 4,896ControlListflare.vis.controls.ControlList 4,665ClickControlflare.vis.controls.ClickControl 3,824ExpandControlflare.vis.controls.ExpandControl 2,832DragControlflare.vis.controls.DragControl 2,649AnchorControlflare.vis.controls.AnchorControl 2,138Controlflare.vis.controls.Control 1,353IControlflare.vis.controls.IControl 763Legendflare.vis.legend.Legend 20,859LegendRangeflare.vis.legend.LegendRange 10,530LegendItemflare.vis.legend.LegendItem 4,614Axisflare.vis.axis.Axis 24,593CartesianAxesflare.vis.axis.CartesianAxes 6,703Axesflare.vis.axis.Axes 1,302AxisGridLineflare.vis.axis.AxisGridLine 652AxisLabelflare.vis.axis.AxisLabel 636DataEventflare.vis.events.DataEvent 2,313SelectionEventflare.vis.events.SelectionEvent 1,880TooltipEventflare.vis.events.TooltipEvent 1,701VisualizationEventflare.vis.events.VisualizationEvent 1,117Visualizationflare.vis.Visualization 16,540ColorPaletteflare.util.palette.ColorPalette 6,367SizePaletteflare.util.palette.SizePalette 2,291ShapePaletteflare.util.palette.ShapePalette 2,059Paletteflare.util.palette.Palette 1,229FibonacciHeapflare.util.heap.FibonacciHeap 9,354HeapNodeflare.util.heap.HeapNode 1,233SparseMatrixflare.util.math.SparseMatrix 3,366DenseMatrixflare.util.math.DenseMatrix 3,165IMatrixflare.util.math.IMatrix 2,815Stringsflare.util.Strings 22,026Shapesflare.util.Shapes 19,118Mathsflare.util.Maths 17,705Displaysflare.util.Displays 12,555Geometryflare.util.Geometry 10,993Colorsflare.util.Colors 10,001Arraysflare.util.Arrays 8,258Datesflare.util.Dates 8,217Sortflare.util.Sort 6,887Statsflare.util.Stats 6,557Propertyflare.util.Property 5,559Filterflare.util.Filter 2,324Orientationflare.util.Orientation 1,486IValueProxyflare.util.IValueProxy 874IPredicateflare.util.IPredicate 383IEvaluableflare.util.IEvaluable 335Interpolatorflare.animate.interpolate.Interpolator 8,746MatrixInterpolatorflare.animate.interpolate.MatrixInterpolator 2,202ColorInterpolatorflare.animate.interpolate.ColorInterpolator 2,047RectangleInterpolatorflare.animate.interpolate.RectangleInterpolator 2,042ArrayInterpolatorflare.animate.interpolate.ArrayInterpolator 1,983PointInterpolatorflare.animate.interpolate.PointInterpolator 1,675ObjectInterpolatorflare.animate.interpolate.ObjectInterpolator 1,629NumberInterpolatorflare.animate.interpolate.NumberInterpolator 1,382DateInterpolatorflare.animate.interpolate.DateInterpolator 1,375Transitionerflare.animate.Transitioner 19,975Easingflare.animate.Easing 17,010Transitionflare.animate.Transition 9,201Tweenflare.animate.Tween 6,006FunctionSequenceflare.animate.FunctionSequence 5,842Schedulerflare.animate.Scheduler 5,593Sequenceflare.animate.Sequence 5,534Parallelflare.animate.Parallel 5,176TransitionEventflare.animate.TransitionEvent 1,116ISchedulableflare.animate.ISchedulable 1,041Pauseflare.animate.Pause 449rangeflare.query.methods.range 772iffflare.query.methods.iff 748gteflare.query.methods.gte 625lteflare.query.methods.lte 619gtflare.query.methods.gt 603mulflare.query.methods.mul 603subflare.query.methods.sub 600neqflare.query.methods.neq 599ltflare.query.methods.lt 597divflare.query.methods.div 595eqflare.query.methods.eq 594addflare.query.methods.add 593modflare.query.methods.mod 591isaflare.query.methods.isa 461fnflare.query.methods.fn 460notflare.query.methods.not 386stddevflare.query.methods.stddev 363xorflare.query.methods.xor 354varianceflare.query.methods.variance 335andflare.query.methods.and 330orflare.query.methods.or 323orderbyflare.query.methods.orderby 307updateflare.query.methods.update 307whereflare.query.methods.where 299selectflare.query.methods.select 296distinctflare.query.methods.distinct 292averageflare.query.methods.average 287maxflare.query.methods.max 283minflare.query.methods.min 283sumflare.query.methods.sum 280countflare.query.methods.count 277_flare.query.methods._ 264Queryflare.query.Query 13,896Expressionflare.query.Expression 5,130Comparisonflare.query.Comparison 5,103DateUtilflare.query.DateUtil 4,141StringUtilflare.query.StringUtil 4,130Arithmeticflare.query.Arithmetic 3,891Matchflare.query.Match 3,748CompositeExpressionflare.query.CompositeExpression 3,677ExpressionIteratorflare.query.ExpressionIterator 3,617Fnflare.query.Fn 3,240BinaryExpressionflare.query.BinaryExpression 2,893Ifflare.query.If 2,732IsAflare.query.IsA 2,039Varianceflare.query.Variance 1,876AggregateExpressionflare.query.AggregateExpression 1,616Rangeflare.query.Range 1,594Notflare.query.Not 1,554Literalflare.query.Literal 1,214Variableflare.query.Variable 1,124Xorflare.query.Xor 1,101Andflare.query.And 1,027Orflare.query.Or 970Distinctflare.query.Distinct 933Averageflare.query.Average 891Maximumflare.query.Maximum 843Minimumflare.query.Minimum 843Sumflare.query.Sum 791Countflare.query.Count 781MaxFlowMinCutflare.analytics.graph.MaxFlowMinCut 7,840ShortestPathsflare.analytics.graph.ShortestPaths 5,914LinkDistanceflare.analytics.graph.LinkDistance 5,731BetweennessCentralityflare.analytics.graph.BetweennessCentrality 3,534SpanningTreeflare.analytics.graph.SpanningTree 3,416HierarchicalClusterflare.analytics.cluster.HierarchicalCluster 6,714AgglomerativeClusterflare.analytics.cluster.AgglomerativeCluster 3,938CommunityStructureflare.analytics.cluster.CommunityStructure 3,812MergeEdgeflare.analytics.cluster.MergeEdge 743AspectRatioBankerflare.analytics.optimization.AspectRatioBanker 7,074GraphMLConverterflare.data.converters.GraphMLConverter 9,800DelimitedTextConverterflare.data.converters.DelimitedTextConverter 4,294JSONConverterflare.data.converters.JSONConverter 2,220IDataConverterflare.data.converters.IDataConverter 1,314Convertersflare.data.converters.Converters 721DataSourceflare.data.DataSource 3,331DataUtilflare.data.DataUtil 3,322DataSchemaflare.data.DataSchema 2,165DataFieldflare.data.DataField 1,759DataTableflare.data.DataTable 772DataSetflare.data.DataSet 586TimeScaleflare.scale.TimeScale 5,833QuantitativeScaleflare.scale.QuantitativeScale 4,839Scaleflare.scale.Scale 4,268OrdinalScaleflare.scale.OrdinalScale 3,770LogScaleflare.scale.LogScale 3,151QuantileScaleflare.scale.QuantileScale 2,435IScaleMapflare.scale.IScaleMap 2,105ScaleTypeflare.scale.ScaleType 1,821RootScaleflare.scale.RootScale 1,756LinearScaleflare.scale.LinearScale 1,316NBodyForceflare.physics.NBodyForce 10,498Simulationflare.physics.Simulation 9,983Particleflare.physics.Particle 2,822Springflare.physics.Spring 2,213SpringForceflare.physics.SpringForce 1,681GravityForceflare.physics.GravityForce 1,336DragForceflare.physics.DragForce 1,082IForceflare.physics.IForce 319TextSpriteflare.display.TextSprite 10,066DirtySpriteflare.display.DirtySprite 8,833RectSpriteflare.display.RectSprite 3,623LineSpriteflare.display.LineSprite 1,732FlareVisflare.flex.FlareVis 4,116
<template>
  <div class="demo">
    <d3-treemap :width="860" :height="550" :data="data" :nameFn="nameFn"
      :valueFn="picked === 'size' ? sumBySize : sumByCount"
      :labelFn="labelFn" :colorFn="colorFn"/>
    <input type="radio" value="size" v-model="picked"><label>Size</label>
    <input type="radio" value="count" v-model="picked"><label>Count</label>
  </div>
</template>

<script>
import * as d3 from 'd3'
import data from '../public/data/flare.json'

export default {
  data () {
    return { picked: 'size' }
  },
  created () {
    this.data = data
    this.nameFn = node => node.name,
    this.labelFn = node => node.name.split(/(?=[A-Z][^A-Z])/g)
    const fader = color => d3.interpolateRgb(color, "#fff")(0.2)
    this.colorFn = d3.scaleOrdinal(d3.schemePaired.map(fader))
    this.sumBySize = node => node.size
    this.sumByCount = function(node) { return node.children ? 0 : 1 }
  }
}
</script>

<style lang="scss" scoped>
.demo /deep/ {
  svg {
    font: 10px sans-serif;
  }
}
</style>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37