private TimeSeriesCollection createTimeSeriesData() {
		TimeSeriesCollection tsc = new TimeSeriesCollection(); 
		TimeSeries vehTotal = new TimeSeries("Total Vehicles");
		TimeSeries carTotal = new TimeSeries("Total Cars"); 
		TimeSeries mcTotal = new TimeSeries("MotorCycles");
		
		//Base time, data set up - the calendar is needed for the time points
		Calendar cal = GregorianCalendar.getInstance();
		Random rng = new Random(250); 
		
		int cars = 0;
		int mc = 0; 
		
		//Hack loop to make it interesting. Grows for half of it, then declines
		for (int i=0; i<=18*60; i++) {
			//These lines are important 
			cal.set(2014,0,1,6,i);
	        Date timePoint = cal.getTime();
	        
	        //HACK BEGINS
	        if (i<9*60) {
	        	if (randomSuccess(0.2,rng)) {
	        		cars++; 
	        	}
	        	if (randomSuccess(0.1,rng)) {
	        		mc++;
	        	}
	        } else if (i < 18*60) {
	        	if (randomSuccess(0.15,rng)) {
	        		cars++; 
	        	} else if (randomSuccess(0.4,rng)) {
	        		cars = Math.max(cars-1,0);
	        	}
	        	if (randomSuccess(0.05,rng)) {
	        		mc++; 
	        	} else if (randomSuccess(0.2,rng)) {
	        		mc = Math.max(mc-1,0);
	        	}
	        } else {
	        	cars=0; 
	        	mc =0;
	        }
	        //HACK ENDS
	        
	        //This is important - steal it shamelessly 
			mcTotal.add(new Minute(timePoint),mc);
			carTotal.add(new Minute(timePoint),cars);
			vehTotal.add(new Minute(timePoint),cars+mc);
		}
		
		//Collection
		tsc.addSeries(vehTotal);
		tsc.addSeries(carTotal);
		tsc.addSeries(mcTotal);
		return tsc; 
	}