Skip to content

Instantly share code, notes, and snippets.

@bsullins
Last active March 17, 2018 22:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bsullins/974b435aa3e0882ff85123a001f9c899 to your computer and use it in GitHub Desktop.
Save bsullins/974b435aa3e0882ff85123a001f9c899 to your computer and use it in GitHub Desktop.
Tesla Affordability Calc
license: mit
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script src="https://d3js.org/d3.v4.min.js"></script>
<style>
body { margin:0;position:fixed;top:0;right:0;bottom:0;left:0; }
</style>
<style>
.ticks {
font: 10px sans-serif;
}
.track,
.track-inset,
.track-overlay {
stroke-linecap: round;
}
.track {
stroke: #000;
stroke-opacity: 0.3;
stroke-width: 10px;
}
.track-inset {
stroke: #ddd;
stroke-width: 8px;
}
.track-overlay {
pointer-events: stroke;
stroke-width: 50px;
stroke: transparent;
cursor: crosshair;
}
.handle {
fill: #fff;
stroke: #000;
stroke-opacity: 0.5;
stroke-width: 1.25px;
}
</style>
</head>
<body>
<script>
// Feel free to change or delete any of the code you see in this editor!
var svg = d3.select("body").append("svg")
.attr("width", 960)
.attr("height", 500)
var svg = d3.select("svg"),
margin = {right: 50, left: 50},
width = +svg.attr("width") - margin.left - margin.right,
height = +svg.attr("height");
var x = d3.scaleLinear()
.domain([0, 3000])
.range([0, width])
.clamp(true);
var slider = svg.append("g")
.attr("class", "slider")
.attr("transform", "translate(" + margin.left + "," + height / 2 + ")");
slider.append("line")
.attr("class", "track")
.attr("x1", x.range()[0])
.attr("x2", x.range()[1])
.select(function() { return this.parentNode.appendChild(this.cloneNode(true)); })
.attr("class", "track-inset")
.select(function() { return this.parentNode.appendChild(this.cloneNode(true)); })
.attr("class", "track-overlay")
.call(d3.drag()
.on("start.interrupt", function() { slider.interrupt(); })
.on("start drag", function() { hue(x.invert(d3.event.x)); }));
slider.insert("g", ".track-overlay")
.attr("class", "ticks")
.attr("transform", "translate(0," + 18 + ")")
.selectAll("text")
.data(x.ticks(10))
.enter().append("text")
.attr("x", x)
.attr("text-anchor", "middle")
.text(function(d) { return d + "°"; });
var handle = slider.insert("circle", ".track-overlay")
.attr("class", "handle")
.attr("r", 9);
// slider.transition() // Gratuitous intro!
// .duration(750)
// .tween("hue", function() {
// var i = d3.interpolate(0, 70);
// return function(t) { hue(i(t)); };
// });
function hue(h) {
handle.attr("cx", x(h));
svg.style("background-color", d3.hsl(h, 0.8, 0.8));
}
// load data
d3.csv('prices.csv', function(data){
var car = svg.append("div")
.attr("width", width/3)
.attr("height", 100);
car.append("h2")
.attr("text", data.Key);
});
</script>
</body>
Key Model Trim UpgradeKey Options Base Price Bace Monthly Upgrade Prices Upgrade Monthly Total Price Total Monthly
S75D S 75D S0 Base 74,500 1,059 0 0 74,500 1,059
S75D S 75D S1 Premium Upgrade 74,500 1,059 5000 73 79,500 1,132
S75D S 75D S2 Premium Upgrade, Enhanced Autopilot 74,500 1,059 10000 146 84,500 1,205
S75D S 75D S3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 74,500 1,059 14000 204 88,500 1,263
S75D S 75D S4 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 74,500 1,059 17000 248 91,500 1,307
S100D S 100D S0 Base 94,000 1,311 0 0 94,000 1,311
S100D S 100D S1 Premium Upgrade 94,000 1,311 5000 73 99,000 1,384
S100D S 100D S2 Premium Upgrade, Enhanced Autopilot 94,000 1,311 10000 146 104,000 1,457
S100D S 100D S3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 94,000 1,311 14000 204 108,000 1,515
S100D S 100D S4 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 94,000 1,311 17000 248 111,000 1,559
SP100D S P100D SP0 Premium Upgrade 135,000 1,907 0 0 135,000 1,907
SP100D S P100D SP1 Premium Upgrade, Enhanced Autopilot 135,000 1,907 5000 73 140,000 1,980
SP100D S P100D SP2 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 135,000 1,907 8000 131 143,000 2,038
SP100D S P100D SP3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 135,000 1,907 11000 175 146,000 2,082
X75D X 75D X0 Five Seat Interior Base 79,500 1,133 0 0 79,500 1,133
X75D X 75D X1 Five Seat Interior, Premium Upgrades 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X2 Five Seat Interior, Premium Upgrades, EAP 79,500 1,133 11000 160 90,500 1,293
X75D X 75D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 14000 204 93,500 1,337
X75D X 75D X0.1 Six Seat Interior Base 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X0.2 Six Seat Interior w/ Center Console Base 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X0.3 Seven Seat Interior Base 79,500 1,133 3000 44 82,500 1,177
X75D X 75D X1.1 Six Seat Interior, Premium Upgrades 79,500 1,133 12000 174 91,500 1,307
X75D X 75D X2.1 Six Seat Interior, Premium Upgrades, EAP 79,500 1,133 17000 247 96,500 1,380
X75D X 75D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 20000 291 99,500 1,424
X75D X 75D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 79,500 1,133 12000 174 91,500 1,307
X75D X 75D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 79,500 1,133 17000 247 96,500 1,380
X75D X 75D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 79,500 1,133 20000 291 99,500 1,424
X75D X 75D X1.3 Seven Seat Interior, Premium Upgrades 79,500 1,133 9000 131 88,500 1,264
X75D X 75D X2.3 Seven Seat Interior, Premium Upgrades, EAP 79,500 1,133 14000 204 93,500 1,337
X75D X 75D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 17000 248 96,500 1,381
X100D X 100D X0 Five Seat Interior Base 96,000 1,340 0 0 96,000 1,340
X100D X 100D X1 Five Seat Interior, Premium Upgrades 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X2 Five Seat Interior, Premium Upgrades, EAP 96,000 1,340 11000 160 107,000 1,500
X100D X 100D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 14000 204 110,000 1,544
X100D X 100D X0.1 Six Seat Interior Base 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X0.2 Six Seat Interior w/ Center Console Base 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X0.3 Seven Seat Interior Base 96,000 1,340 3000 44 99,000 1,384
X100D X 100D X1.1 Six Seat Interior, Premium Upgrades 96,000 1,340 12000 174 108,000 1,514
X100D X 100D X2.1 Six Seat Interior, Premium Upgrades, EAP 96,000 1,340 17000 247 113,000 1,587
X100D X 100D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 20000 291 116,000 1,631
X100D X 100D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 96,000 1,340 12000 174 108,000 1,514
X100D X 100D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 96,000 1,340 17000 247 113,000 1,587
X100D X 100D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 96,000 1,340 20000 291 116,000 1,631
X100D X 100D X1.3 Seven Seat Interior, Premium Upgrades 96,000 1,340 9000 131 105,000 1,471
X100D X 100D X2.3 Seven Seat Interior, Premium Upgrades, EAP 96,000 1,340 14000 204 110,000 1,544
X100D X 100D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 17000 248 113,000 1,588
XP100D X P100D X0 Five Seat Interior Base 140,000 1,979 0 0 140,000 1,979
XP100D X P100D X1 Five Seat Interior, Premium Upgrades 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X2 Five Seat Interior, Premium Upgrades, EAP 140,000 1,979 11000 160 151,000 2,139
XP100D X P100D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 14000 204 154,000 2,183
XP100D X P100D X0.1 Six Seat Interior Base 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X0.2 Six Seat Interior w/ Center Console Base 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X0.3 Seven Seat Interior Base 140,000 1,979 3000 44 143,000 2,023
XP100D X P100D X1.1 Six Seat Interior, Premium Upgrades 140,000 1,979 12000 174 152,000 2,153
XP100D X P100D X2.1 Six Seat Interior, Premium Upgrades, EAP 140,000 1,979 17000 247 157,000 2,226
XP100D X P100D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 20000 291 160,000 2,270
XP100D X P100D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 140,000 1,979 12000 174 152,000 2,153
XP100D X P100D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 140,000 1,979 17000 247 157,000 2,226
XP100D X P100D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 140,000 1,979 20000 291 160,000 2,270
XP100D X P100D X1.3 Seven Seat Interior, Premium Upgrades 140,000 1,979 9000 131 149,000 2,110
XP100D X P100D X2.3 Seven Seat Interior, Premium Upgrades, EAP 140,000 1,979 14000 204 154,000 2,183
XP100D X P100D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 17000 248 157,000 2,227
S75D S 75D S0 Base 74,500 1,059 0 0 74,500 1,059
S75D S 75D S1 Premium Upgrade 74,500 1,059 5000 73 79,500 1,132
S75D S 75D S2 Premium Upgrade, Enhanced Autopilot 74,500 1,059 10000 146 84,500 1,205
S75D S 75D S3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 74,500 1,059 14000 204 88,500 1,263
S75D S 75D S4 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 74,500 1,059 17000 248 91,500 1,307
S100D S 100D S0 Base 94,000 1,311 0 0 94,000 1,311
S100D S 100D S1 Premium Upgrade 94,000 1,311 5000 73 99,000 1,384
S100D S 100D S2 Premium Upgrade, Enhanced Autopilot 94,000 1,311 10000 146 104,000 1,457
S100D S 100D S3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 94,000 1,311 14000 204 108,000 1,515
S100D S 100D S4 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 94,000 1,311 17000 248 111,000 1,559
SP100D S P100D SP0 Premium Upgrade 135,000 1,907 0 0 135,000 1,907
SP100D S P100D SP1 Premium Upgrade, Enhanced Autopilot 135,000 1,907 5000 73 140,000 1,980
SP100D S P100D SP2 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats 135,000 1,907 8000 131 143,000 2,038
SP100D S P100D SP3 Premium Upgrade, Enhanced Autopilot, Rear Facing Seats, Full Self-Driving 135,000 1,907 11000 175 146,000 2,082
X75D X 75D X0 Five Seat Interior Base 79,500 1,133 0 0 79,500 1,133
X75D X 75D X1 Five Seat Interior, Premium Upgrades 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X2 Five Seat Interior, Premium Upgrades, EAP 79,500 1,133 11000 160 90,500 1,293
X75D X 75D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 14000 204 93,500 1,337
X75D X 75D X0.1 Six Seat Interior Base 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X0.2 Six Seat Interior w/ Center Console Base 79,500 1,133 6000 87 85,500 1,220
X75D X 75D X0.3 Seven Seat Interior Base 79,500 1,133 3000 44 82,500 1,177
X75D X 75D X1.1 Six Seat Interior, Premium Upgrades 79,500 1,133 12000 174 91,500 1,307
X75D X 75D X2.1 Six Seat Interior, Premium Upgrades, EAP 79,500 1,133 17000 247 96,500 1,380
X75D X 75D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 20000 291 99,500 1,424
X75D X 75D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 79,500 1,133 12000 174 91,500 1,307
X75D X 75D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 79,500 1,133 17000 247 96,500 1,380
X75D X 75D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 79,500 1,133 20000 291 99,500 1,424
X75D X 75D X1.3 Seven Seat Interior, Premium Upgrades 79,500 1,133 9000 131 88,500 1,264
X75D X 75D X2.3 Seven Seat Interior, Premium Upgrades, EAP 79,500 1,133 14000 204 93,500 1,337
X75D X 75D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 79,500 1,133 17000 248 96,500 1,381
X100D X 100D X0 Five Seat Interior Base 96,000 1,340 0 0 96,000 1,340
X100D X 100D X1 Five Seat Interior, Premium Upgrades 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X2 Five Seat Interior, Premium Upgrades, EAP 96,000 1,340 11000 160 107,000 1,500
X100D X 100D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 14000 204 110,000 1,544
X100D X 100D X0.1 Six Seat Interior Base 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X0.2 Six Seat Interior w/ Center Console Base 96,000 1,340 6000 87 102,000 1,427
X100D X 100D X0.3 Seven Seat Interior Base 96,000 1,340 3000 44 99,000 1,384
X100D X 100D X1.1 Six Seat Interior, Premium Upgrades 96,000 1,340 12000 174 108,000 1,514
X100D X 100D X2.1 Six Seat Interior, Premium Upgrades, EAP 96,000 1,340 17000 247 113,000 1,587
X100D X 100D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 20000 291 116,000 1,631
X100D X 100D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 96,000 1,340 12000 174 108,000 1,514
X100D X 100D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 96,000 1,340 17000 247 113,000 1,587
X100D X 100D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 96,000 1,340 20000 291 116,000 1,631
X100D X 100D X1.3 Seven Seat Interior, Premium Upgrades 96,000 1,340 9000 131 105,000 1,471
X100D X 100D X2.3 Seven Seat Interior, Premium Upgrades, EAP 96,000 1,340 14000 204 110,000 1,544
X100D X 100D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 96,000 1,340 17000 248 113,000 1,588
XP100D X P100D X0 Five Seat Interior Base 140,000 1,979 0 0 140,000 1,979
XP100D X P100D X1 Five Seat Interior, Premium Upgrades 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X2 Five Seat Interior, Premium Upgrades, EAP 140,000 1,979 11000 160 151,000 2,139
XP100D X P100D X3 Five Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 14000 204 154,000 2,183
XP100D X P100D X0.1 Six Seat Interior Base 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X0.2 Six Seat Interior w/ Center Console Base 140,000 1,979 6000 87 146,000 2,066
XP100D X P100D X0.3 Seven Seat Interior Base 140,000 1,979 3000 44 143,000 2,023
XP100D X P100D X1.1 Six Seat Interior, Premium Upgrades 140,000 1,979 12000 174 152,000 2,153
XP100D X P100D X2.1 Six Seat Interior, Premium Upgrades, EAP 140,000 1,979 17000 247 157,000 2,226
XP100D X P100D X3.1 Six Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 20000 291 160,000 2,270
XP100D X P100D X1.2 Six Seat Interior w/ Center Console, Premium Upgrades 140,000 1,979 12000 174 152,000 2,153
XP100D X P100D X2.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP 140,000 1,979 17000 247 157,000 2,226
XP100D X P100D X3.2 Six Seat Interior w/ Center Console, Premium Upgrades, EAP, FSD 140,000 1,979 20000 291 160,000 2,270
XP100D X P100D X1.3 Seven Seat Interior, Premium Upgrades 140,000 1,979 9000 131 149,000 2,110
XP100D X P100D X2.3 Seven Seat Interior, Premium Upgrades, EAP 140,000 1,979 14000 204 154,000 2,183
XP100D X P100D X3.3 Seven Seat Interior, Premium Upgrades, EAP, FSD 140,000 1,979 17000 248 157,000 2,227
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment