|
<script type="application/json" data-for="htmlwidget-5d91d7c75ebbae4c6d17">{"x":{"data":{"names":["Mazda RX4","Mazda RX4 Wag","Datsun 710","Hornet 4 Drive","Hornet Sportabout","Valiant","Duster 360","Merc 240D","Merc 230","Merc 280","Merc 280C","Merc 450SE","Merc 450SL","Merc 450SLC","Cadillac Fleetwood","Lincoln Continental","Chrysler Imperial","Fiat 128","Honda Civic","Toyota Corolla","Toyota Corona","Dodge Challenger","AMC Javelin","Camaro Z28","Pontiac Firebird","Fiat X1-9","Porsche 914-2","Lotus Europa","Ford Pantera L","Ferrari Dino","Maserati Bora","Volvo 142E"],"mpg":[21,21,22.8,21.4,18.7,18.1,14.3,24.4,22.8,19.2,17.8,16.4,17.3,15.2,10.4,10.4,14.7,32.4,30.4,33.9,21.5,15.5,15.2,13.3,19.2,27.3,26,30.4,15.8,19.7,15,21.4],"cyl":[6,6,4,6,8,6,8,4,4,6,6,8,8,8,8,8,8,4,4,4,4,8,8,8,8,4,4,4,8,6,8,4],"disp":[160,160,108,258,360,225,360,146.7,140.8,167.6,167.6,275.8,275.8,275.8,472,460,440,78.7,75.7,71.1,120.1,318,304,350,400,79,120.3,95.1,351,145,301,121],"hp":[110,110,93,110,175,105,245,62,95,123,123,180,180,180,205,215,230,66,52,65,97,150,150,245,175,66,91,113,264,175,335,109],"drat":[3.9,3.9,3.85,3.08,3.15,2.76,3.21,3.69,3.92,3.92,3.92,3.07,3.07,3.07,2.93,3,3.23,4.08,4.93,4.22,3.7,2.76,3.15,3.73,3.08,4.08,4.43,3.77,4.22,3.62,3.54,4.11],"wt":[2.62,2.875,2.32,3.215,3.44,3.46,3.57,3.19,3.15,3.44,3.44,4.07,3.73,3.78,5.25,5.424,5.345,2.2,1.615,1.835,2.465,3.52,3.435,3.84,3.845,1.935,2.14,1.513,3.17,2.77,3.57,2.78],"qsec":[16.46,17.02,18.61,19.44,17.02,20.22,15.84,20,22.9,18.3,18.9,17.4,17.6,18,17.98,17.82,17.42,19.47,18.52,19.9,20.01,16.87,17.3,15.41,17.05,18.9,16.7,16.9,14.5,15.5,14.6,18.6],"vs":[0,0,1,1,0,1,0,1,1,1,1,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,1,0,0,0,1],"am":[1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1],"gear":[4,4,4,3,3,3,3,4,4,4,4,3,3,3,3,3,3,4,4,4,3,3,3,3,3,4,5,5,5,5,5,4],"carb":[4,4,1,1,2,1,4,2,2,4,4,3,3,3,4,4,4,1,2,1,1,2,2,4,2,1,2,2,4,6,8,2]},"options":{"rownames":true,"brushMode":"1D-axes","brushPredicate":"AND","reorderable":false,"margin":{"top":50,"bottom":50,"left":100,"right":50},"mode":false,"height":350},"autoresize":false,"tasks":null},"evals":[],"jsHooks":{"render":[{"code":"\nfunction(el, x) {\n var pc = this.instance.parcoords\n\n // hard code for now cyl will be 3rd dimension\n var dim_cyl = d3.select('.dimension:nth-of-type(3)')\n\n var sc_cyl = pc.dimensions().cyl.yscale\n\n\tvar sc_y = d3.scale.ordinal()\n .domain([4,6,8])\n .rangeRoundBands(sc_cyl.range())\n\n var ax_y = d3.svg.axis()\n .scale(sc_y)\n .orient('left')\n\n dim_cyl.selectAll('.tick').remove()\n\n var g_ax = dim_cyl.append('g')\n .call(ax_y)\n\n var color = d3.scale.category10()\n\n g_ax.select('path').style('display', 'none')\n\n g_ax\n \t.selectAll('.tick')\n .classed('selected', true)\n \t.append('rect')\n \t.attr('height', sc_y.rangeBand())\n \t.attr('y', -sc_y.rangeBand()/2)\n \t.attr('width', 10)\n .attr('x', -5)\n \t.attr('fill', function(d){return color(d)})\n\n g_ax.selectAll('.tick')\n .style('opacity', 1)\n \t.on('click', toggle)\n\n function toggle() {\n var selected = !d3.select(this).classed('selected')\n d3.select(this).classed('selected', selected)\n d3.select(this)\n \t.style('opacity', selected ? 1 : 0.4)\n\n filter_pc(dim_cyl, 'cyl')\n }\n\n function filter_pc(el, dim) {\n var selected = []\n dim_cyl.selectAll('.selected').each(function(d) {\n selected.push(d)\n })\n var filters = pc.outsideFilters() || {}\n\n filters[dim] = selected\n pc.outsideFilters(filters)\n pc.brushUpdated(pc.selected())\n }\n}\n","data":null}]}}</script> |