function drawXAxis(sel) {
let xAxis = sel.append("g")
.attr("id", "x-axis")
.attr("transform", "translate(" + areaOffsetX(0) + "," + areaOffsetY(0) + ")");
let xTicks = xAxis.selectAll(".ticks")
.data(xTickValues)
.enter()
.append("g")
.attr("class", "tick")
.attr("transform", function (d) {
let x = xWidth * (d);
let y = yArea(0, (dataLength * (d)));
return "translate(" + x + "," + y + ")"
});
let tickLength = zDiagonalSlider + 25;
let tickText = tickLength + 5;
xTicks.append("line")
.attr("x1", 0)
.attr("y1", 0)
.attr("x2", adjacentCos(zAngle, tickLength))
.attr("y2", oppositeSin(zAngle, tickLength));
xTicks.append("text")
.attr("class", "axis-label")
.text(function (d) { return parseInt(xScale.invert(xWidth * (d))) })
.attr("x", adjacentCos(zAngle, tickText))
.attr("y", oppositeSin(zAngle, tickText));
};