Skip to content

Instantly share code, notes, and snippets.

@zindlerb
Last active August 29, 2015 13:57
Show Gist options
  • Select an option

  • Save zindlerb/9680652 to your computer and use it in GitHub Desktop.

Select an option

Save zindlerb/9680652 to your computer and use it in GitHub Desktop.
LU Graduates GPA vs. Salary

Lawrence Graduates GPA vs. Salary Scatterplot

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Scatter</title>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.6.0/underscore-min.js"></script>
<style>
body {
font: 10px sans-serif;
}
.axis path,
.axis line {
fill: none;
stroke: #000;
shape-rendering: crispEdges;
}
.dot {
stroke: #000;
}
.major:hover {
font-weight: bold;
}
</style>
</head>
<body></body>
<script src="scatter.js"></script>
</html>
year status major gender gpa salary
2012 fellowship psychology male 2.8 none
2012 employed biology male 3.3 50176
2012 employed economics male 2.2 30933
2012 employed economics male 3.4 54243
2012 employed math female 3.3 44351
2012 employed economics female 3 32700
2012 internship biology male 2.8 none
2012 internship economics female 3.1 none
2012 employed math male 3 47100
2012 employed math male 3.1 50892
2012 employed economics male 2.9 25150
2012 grad_school psychology female 2.7 none
2012 job_search economics female 2.2 none
2012 grad_school math female 2.6 none
2012 employed psychology male 3 44540
2012 employed math male 2.5 34340
2012 internship spanish female 2.3 none
2012 employed psychology female 2.1 23635
2012 employed economics male 3.5 36700
2012 grad_school biology female 4 none
2012 grad_school biology female 2.5 none
2012 employed biology male 3.3 53601
2012 employed psychology female 2.8 39850
2012 employed economics male 3.2 29078
2012 employed psychology male 3.1 42817
2012 grad_school economics male 3.4 none
2012 grad_school english male 2.4 none
2012 employed economics male 3.4 44871
2012 employed economics male 3.7 63124
2012 employed math female 2.9 35428
2012 employed psychology female 2.6 21932
2012 employed math female 3.2 37800
2012 employed biology male 3.4 57629
2012 internship economics female 2.6 none
2012 volunteering spanish male 3.8 none
2012 employed biology female 4 60600
2012 employed economics male 3.2 11671.2
2012 employed economics male 3.5 42800
2012 employed biology female 3 30400
2012 grad_school english male 3.7 none
2012 grad_school psychology male 3.1 none
2012 employed economics female 3.3 57826
2012 employed economics male 3.3 50476
2012 employed biology female 2.1 22335
2012 employed economics female 3.8 63652
2012 employed economics male 3.7 56201
2012 grad_school economics female 3.1 none
2012 employed psychology female 2.1 27654
2012 grad_school biology male 2.3 none
2012 employed math female 3.9 77315
2012 grad_school economics female 2.3 none
2012 employed economics male 4 34160
2012 employed economics male 3.5 47100
2012 employed biology male 3.1 28365
2012 employed math male 3.5 41700
2012 employed biology male 2.5 37900
2012 employed economics male 3.7 69246
2012 employed math female 3.6 46306
2012 employed economics female 2.8 33125
2012 employed math female 3.5 36700
2012 employed biology male 2.4 28064
2012 employed economics female 2.8 40550
2012 employed psychology female 3.4 48057
2012 employed psychology female 3.8 62252
2012 employed economics female 2.5 35100
2012 internship biology male 3.3 none
2012 employed biology female 2.9 38321
2012 grad_school economics male 3.3 none
2012 employed economics male 2.8 43163
2012 employed biology female 2.7 28000
2012 employed psychology male 2.3 31775
2012 employed psychology female 3.2 38300
2012 employed biology male 2.1 27954
2012 employed math male 3.9 53800
2012 employed biology male 2.9 44507
2012 employed biology female 3.6 64034
2012 employed economics male 3.7 43856
2012 employed math female 2.6 35827
2012 internship psychology male 3.6 none
2012 grad_school psychology female 2.4 none
2012 employed biology female 3 25600
2012 internship biology female 2.2 none
2012 grad_school economics male 2.4 none
2012 employed psychology male 2.3 32575
2012 employed biology male 2.9 12934
2012 employed economics female 3.3 32376
2012 employed economics male 2.8 36038
2012 internship economics male 2.9 none
2012 internship spanish female 2.2 none
2012 employed economics male 3.3 49976
2012 employed math female 3.4 49657
2012 employed math male 2.8 36638
2012 employed economics female 3.7 44556
2012 employed economics male 3.5 64200
2012 employed economics female 4 92900
2012 employed biology female 4 85600
2012 grad_school economics female 3 none
2012 grad_school spanish male 2.6 none
2012 employed economics female 2.5 28800
2012 employed economics female 2.4 22971
2012 employed biology female 2.8 22988
2012 internship psychology female 3.1 none
2012 grad_school psychology male 3.5 none
2012 employed economics female 3.5 58600
2012 employed math male 2.3 26862
2012 grad_school math male 3.2 none
2012 employed psychology female 2.7 38667
2012 grad_school economics female 2.2 none
2012 employed economics male 3.1 49992
2012 grad_school economics male 2.1 none
2012 grad_school spanish male 3.4 none
2012 employed economics male 2.5 28400
2012 employed economics female 3.1 28465
2012 employed economics female 3 33000
2012 employed math female 2.1 30113
2012 employed math female 3.2 33689
2012 employed math female 2.5 31800
2012 employed biology female 2.6 21432
2012 grad_school economics male 3.9 none
2012 internship spanish male 2.9 none
2012 employed economics female 3.5 52700
2012 grad_school economics female 2.4 none
2012 employed biology female 3.5 42300
2012 grad_school spanish male 3.2 none
2012 employed psychology male 3.2 49634
2012 internship biology female 2.5 none
2012 grad_school economics female 3.9 none
2012 employed psychology male 2.9 30635
2012 grad_school english female 3 none
2012 employed economics male 3 43900
2012 employed psychology female 4 60200
2012 fellowship biology male 2.1 none
2012 employed psychology male 3.6 46406
2012 grad_school psychology male 3.8 none
2012 employed math female 2.9 42714
2012 employed biology male 3.5 54000
2012 employed economics male 2.3 26962
2012 employed economics female 3.1 39479
2012 employed economics male 3.9 61172
2012 employed math female 3.8 49152
2012 employed biology female 3.9 76415
2012 employed economics male 4 77600
2012 employed math female 3 30700
2012 employed psychology female 2.8 43363
2012 employed biology male 2.8 10600
2012 employed economics female 3.4 54443
2012 employed economics male 3.4 38886
2012 employed psychology female 2.7 40422
2012 employed economics male 2.1 26194
2012 employed psychology female 3 40200
2012 employed economics female 3.6 57858
2012 grad_school economics female 3.7 none
2012 employed economics male 3.6 47306
2012 employed economics male 3.6 74585
2012 grad_school psychology male 2.1 none
2012 volunteering english female 3.5 none
2012 employed psychology male 3.7 76669
2012 employed psychology male 3.8 55702
2012 internship spanish female 3.4 none
2012 volunteering economics male 2.4 none
2012 employed biology female 2.8 23188
2012 grad_school economics male 3.7 none
2012 employed math male 3.8 63152
2012 internship english male 2.5 none
2012 employed psychology male 4 114920
2012 grad_school psychology male 2.5 none
2012 employed economics female 3.2 46423
2012 employed psychology female 3.7 69746
2012 employed psychology male 2.8 32925
2012 employed biology female 2.2 24750
2012 employed economics female 2.3 19944
2012 grad_school economics female 2.2 none
2012 internship psychology male 3.9 none
2012 internship psychology male 3.2 none
2012 employed economics male 3.4 43671
2012 employed math female 3.6 40030
2012 employed math male 3.6 51282
2012 internship biology male 2.5 none
2012 employed psychology male 3 34100
2012 grad_school math male 3.7 none
2012 employed economics female 3.3 50476
2012 employed economics female 4 85300
2012 employed economics male 3.1 80163.5
2012 employed biology female 3.9 61772
2012 employed economics female 3.5 48500
2012 employed economics male 4 102300
2012 employed economics male 3.6 57758
2012 employed economics male 2.9 45007
2012 employed economics female 3.9 60672
2012 internship math female 3.9 none
2012 employed math female 3.5 100130
2012 volunteering spanish male 3.1 none
2012 employed biology male 3.2 42212
2012 employed economics male 2.4 42103.9
2012 internship spanish male 3 none
2012 grad_school economics female 3.9 none
2012 internship spanish male 4 none
2012 employed biology female 3.5 38100
2012 employed economics male 3.4 52743
2012 employed math male 3.9 84486
2012 employed economics female 2.8 37038
2012 employed economics female 3.3 32076
2012 employed economics male 2.5 36600
2012 employed psychology female 2.7 37167
2012 employed economics male 2.1 23535
2012 employed biology female 3.4 39686
2012 grad_school english female 3.8 none
2012 employed economics female 2.9 34528
2012 internship math male 3.4 none
2012 employed math male 2.4 24567
2012 employed biology female 3.6 97508.59999999999
2012 employed economics male 2.5 34400
2012 employed economics female 3.8 62652
2012 employed biology male 4 110300
2012 employed psychology male 3.8 76553
2012 employed math female 2.8 35838
2012 employed psychology female 2.2 23850
2012 grad_school biology female 3.8 none
2012 employed economics female 3.7 56301
2012 employed math female 2.9 35928
2012 employed biology female 2.7 40822
2012 grad_school biology female 2.2 none
2012 employed economics male 3.2 43112
2012 employed economics male 2.4 30660
2012 grad_school psychology female 3.8 none
2012 employed math male 3.5 37400
2012 employed biology male 2.2 18194
2012 employed economics male 2.7 35311
2012 grad_school psychology male 2.3 none
2012 employed biology female 3.4 49757
2012 employed biology female 2.3 29169
2012 employed biology female 2.2 33661
2012 employed economics female 2.7 22089
2012 grad_school psychology male 3.5 none
2012 grad_school economics male 3.9 none
2012 employed math male 3.2 53745
2012 grad_school economics male 2.6 none
2012 employed biology male 3.3 40726
2012 grad_school math male 3.5 none
2012 employed economics male 3.7 75469
2012 employed economics male 2.8 30113
2012 grad_school psychology female 3.5 none
2012 grad_school economics male 3.3 none
2012 employed biology male 3.5 68400
2012 employed economics male 4 86000
2012 grad_school biology female 2.4 none
2012 grad_school economics female 2.2 none
2012 employed economics male 2.7 22889
2012 employed biology female 3.6 41230
2012 grad_school math male 2.6 none
2012 grad_school psychology female 2.9 none
2012 internship economics female 2.8 none
2012 employed economics female 3 48300
2012 internship economics female 3.2 none
2012 grad_school economics female 3.9 none
2012 internship biology female 3 none
2012 employed biology male 3.2 50334
2012 employed psychology female 2.6 35327
2012 grad_school math male 3.2 none
2012 employed economics male 3.7 45556
2012 employed economics male 3.7 44256
2012 employed math female 2.2 23950
2012 volunteering psychology male 2.2 none
2012 employed biology female 2.9 27443
2012 employed economics male 2.7 25544
2012 employed economics male 3 36100
2012 grad_school math female 2.3 none
2012 employed economics male 2.9 42214
2012 employed economics female 3.3 35501
2012 employed math male 2.9 34828
2012 employed biology female 2.9 44207
2012 internship spanish female 2.9 none
2012 employed psychology female 3.1 42317
2012 grad_school economics male 3.1 none
2012 grad_school math male 3.9 none
2012 grad_school psychology female 2.9 none
2012 employed economics male 3.8 75953
2012 employed economics male 3.7 69546
2012 employed economics male 3.2 30578
2012 grad_school biology male 2.8 none
2012 internship psychology male 2.4 none
2012 employed psychology female 2.3 59467.7
2012 employed economics male 2.9 38621
2012 grad_school spanish male 4 none
2012 employed biology male 3.2 41312
2012 employed economics female 2.9 41814
2012 employed economics male 2.9 39121
2012 employed economics male 2.2 22222
2012 employed economics female 2.1 23535
2012 employed math female 4 85100
2012 employed math male 2.6 20832
2012 employed math male 3.6 74885
2012 employed economics male 2.9 27443
2012 employed biology female 3.6 47206
2012 employed math male 2.8 29913
2012 grad_school psychology male 3 none
2012 employed economics male 2.9 17962.8
2012 volunteering economics female 3.1 none
2012 employed economics male 3.1 39279
2012 employed math female 2.6 30689
2012 employed math female 3.8 82903
2012 volunteering economics male 3.8 none
2012 employed economics male 3.7 44456
2012 internship english female 2.5 none
2012 internship biology female 3.3 none
2012 grad_school biology female 3.7 none
var margin = {top: 20, right: 100, bottom: 30, left: 60},
width = 960 - margin.left - margin.right,
height = 500 - margin.top - margin.bottom;
var x = d3.scale.linear()
.range([0, width]);
var y = d3.scale.linear()
.range([height, 0]);
var color = d3.scale.category10();
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom");
var yAxis = d3.svg.axis()
.scale(y)
.orient("left");
var svg = d3.select("body").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
d3.csv("luGrads2012.csv", function(d) {
return {
year: +d.year,
status: d.status,
major: d.major,
gender: d.gender,
gpa: +d.gpa,
salary: d.salary
};
}, function(error, data) {
data = _.filter(data, function(obj) {
return obj.salary != "none";
});
data = _.map(data, function(obj){
obj.salary = +obj.salary;
return obj;
});
x.domain(d3.extent(data, function(d) { return d.gpa; })).nice();
y.domain(d3.extent(data, function(d) { return d.salary; })).nice();
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + height + ")")
.call(xAxis)
.append("text")
.attr("class", "label")
.attr("x", width)
.attr("y", -6)
.style("text-anchor", "end")
.text("GPA");
svg.append("g")
.attr("class", "y axis")
.call(yAxis)
.append("text")
.attr("class", "label")
.attr("transform", "rotate(-90)")
.attr("y", 6)
.attr("dy", ".71em")
.style("text-anchor", "end")
.text("Salary")
update(data);
function update(dat){
svg.selectAll(".dot").remove();
var points = svg.selectAll(".dot")
.data(dat)
points.enter().append("circle")
.attr("class", "dot")
.attr("r", 3.5)
.attr("cx", function(d) { return x(d.gpa); })
.attr("cy", function(d) { return y(d.salary); })
.style("fill", function(d) { return color(d.major); });
}
var legend = svg.selectAll(".legend")
.data(color.domain())
.enter().append("g")
.attr("class", "legend")
.attr("class", "major")
.attr("transform", function(d, i) { return "translate(85," + i * 20 + ")"; });
legend.append("rect")
.attr("x", width - 18)
.attr("width", 18)
.attr("height", 18)
.style("fill", color);
legend.append("text")
.attr("x", width - 24)
.attr("y", 9)
.attr("dy", ".35em")
.style("text-anchor", "end")
.text(function(d) { return d; });
legend.on("mouseenter", function(maj){
var newData = _.filter(data, function(stu) {
return stu.major == maj;
});
update(newData);
});
legend.on("mouseleave", function(maj){
update(data);
})
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment