private void printPlotStats()
	{
		if (time == start)
		{
			String line = FormattedStatistics.repeatChar('-',
					69 + FormattedStatistics.header().length() + FormattedStatistics.header("(err)").length());
			System.out.format("#%15s %s %s %16s %8s %8s %16s%n#%s%n", "reltime", FormattedStatistics.header(),
					FormattedStatistics.header("(err)"), "true", "join", "leave", "variation", line);
		}

		FormattedStatistics trueValues = new FormattedStatistics();

		for (int i = 0; i < apps.size(); i++)
		{
			if (apps.get(i).isActive())
			{
				trueValues.addValue(apps.get(i).getTrueValue());
			}
		}

		FormattedStatistics estimates = new FormattedStatistics();
		FormattedStatistics errors = new FormattedStatistics();

		for (int i = 0; i < apps.size(); i++)
		{
			if (apps.get(i).isActive())
			{
				estimates.addValue(apps.get(i).getEstimate());
				errors.addValue(apps.get(i).getEstimate() - trueValues.getMean());
			}
		}

		System.out.format("%16d %s %s %16e %8s %8s %16s%n", time - start, estimates, errors, trueValues.getMean(), join ? "1" : "-",
				leave ? "1" : "-", variation != 0. || time == start ? String.format("%e", variation) : "-");
	}