(function(d3, fc) {
    'use strict';

    fc.charts.linearTimeSeries = function() {

        var plotArea = fc.series.line();
        var xScale = fc.scale.dateTime();
        var yScale = d3.scale.linear();
        var xAxis = d3.svg.axis()
            .scale(xScale)
            .orient('bottom');
        var yAxis = d3.svg.axis()
            .scale(yScale)
            .orient('left');

        var linearTimeSeries = function(selection) {

            selection.each(function(data) {

                var container = d3.select(this);

                var mainContainer = container.selectAll('svg')
                    .data([data]);
                mainContainer.enter()
                    .append('svg')
                    .attr('overflow', 'hidden')
                    .layout('flex', 1);

                var background = mainContainer.selectAll('rect.background')
                    .data([data]);
                background.enter()
                    .append('rect')
                    .attr('class', 'background')
                    .layout({
                        position: 'absolute',
                        top: 0,
                        right: 0,
                        bottom: 0,
                        left: 0
                    });

                var plotAreaContainer = mainContainer.selectAll('g.plot-area')
                    .data([data]);
                plotAreaContainer.enter()
                    .append('g')
                    .attr('class', 'plot-area')
                    .layout({
                        position: 'absolute',
                        top: 0,
                        right: 0,
                        bottom: 0,
                        left: 0
                    });

                var yAxisContainer = mainContainer.selectAll('g.y-axis')
                    .data([data]);
                yAxisContainer.enter()
                    .append('g')
                    .attr('class', 'axis y-axis')
                    .layout({
                        position: 'absolute',
                        top: 0,
                        right: 0,
                        bottom: 0
                    });

                var xAxisContainer = container.selectAll('g.x-axis')
                    .data([data]);
                xAxisContainer.enter()
                    .append('g')
                    .attr('class', 'axis x-axis')
                    .layout('height', 20);

                container.layout();

                xScale.range([0, xAxisContainer.layout('width')]);

                yScale.range([yAxisContainer.layout('height'), 0]);

                xAxisContainer.call(xAxis);

                yAxisContainer.call(yAxis);

                plotArea.xScale(xScale)
                    .yScale(yScale);
                plotAreaContainer.call(plotArea);

            });
        };

        fc.utilities.rebind(linearTimeSeries, xScale, {
            xDiscontinuityProvider: 'discontinuityProvider',
            xDomain: 'domain',
            xNice: 'nice'
        });

        fc.utilities.rebind(linearTimeSeries, yScale, {
            yDomain: 'domain',
            yNice: 'nice'
        });

        fc.utilities.rebind(linearTimeSeries, xAxis, {
            xTicks: 'ticks'
        });

        fc.utilities.rebind(linearTimeSeries, yAxis, {
            yTicks: 'ticks'
        });

        linearTimeSeries.xScale = function() { return xScale; };
        linearTimeSeries.yScale = function() { return yScale; };
        linearTimeSeries.plotArea = function(x) {
            if (!arguments.length) {
                return plotArea;
            }
            plotArea = x;
            return linearTimeSeries;
        };

        return linearTimeSeries;
    };

})(d3, fc);

@@ -1662,32 +1662,33 @@
         bottom: 
+2
 0,%0A             
@@ -2135,16 +2135,17 @@
 bottom: 
+2
 0%0A      
@@ -2192,33 +2192,37 @@
 AxisContainer = 
-c
+mainC
 ontainer.selectA
@@ -2425,20 +2425,214 @@
 out(
-'height', 20
+%7B%0A                        height: 20,%0A                        position: 'absolute',%0A                        right: 0,%0A                        bottom: 0,%0A                        left: 0%0A                    %7D
 );%0A%0A

Fix positioning of x axis in linearTimeSeries component