block by enjalot de262983e3ba0c0f89c1

block colors

Full Screen

All of the custom colors found in d3.js blocks. We parse out hex codes, hsl(a) and rgb(a) in any html, js or coffee file found in each block.

A collection of blocks scanned with blockscanner for the bl.ocksplorer.org project with some further processing.

forked from enjalot‘s block: all the blocks

forked from enjalot‘s block: block wall

index.html

<!DOCTYPE html>
  <head>
    <meta charset="utf-8">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/crossfilter/1.3.12/crossfilter.js"></script>
    <style>
      body { 
        margin:0;position:fixed;top:0;right:0;bottom:0;left:0; 
        background-color: #fff;
      }
      svg {
        width: 100%; height: 100%;
      }
     
    </style>
  </head>

  <body>
    <svg>
    </svg>

    <script>
      var width = 960;
      var height = 500;
      var treemap = d3.layout.treemap()
      //.padding(4)
      .size([width, height])
      .value(function(d) { return d.count; });
      
      d3.json("blocks-colors.json", function(err, blocks) {
        var allColors = {}
        
        blocks.forEach(function(d) {
          var colors = Object.keys(d.colors)
          colors.forEach(function(color) {
            if(!allColors[color]) allColors[color] = 0;
            allColors[color]++;
          })
        })
        
        var colors = [];
        var colorNames = Object.keys(allColors);
        colorNames.forEach(function(color) {
          colors.push({color: color, count: allColors[color] })
        })
        colors.sort(function(a,b) { return b.count - a.count });
        
        
        /*
        var xf = crossfilter(blocks);
        //var author = xf.dimension(function(d) { return d.userId })
        //var created = xf.dimension(function(d) { return +new Date(d.created_at) })
        var all = xf.dimension(function(d) { return true });
        var colordim = xf.dimension(function(d) { return d.colors });
        */
        
        var svg = d3.select("svg");
        
        var nodes = treemap.nodes({colors: "root", children: colors });
        //console.log(nodes)
        
        function render() {
          
          var cell = svg.selectAll("g.cell")
          .data(nodes)
          .enter().append("g")
            .attr("class", "cell")
            .attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; });

          cell.append("rect")
            .attr("width", function(d) { return d.dx; })
            .attr("height", function(d) { return d.dy; })
            .style("fill", function(d) { return d.children ? null : d.color ; });
        }
        render()
       
      })
    </script>
  </body>