$yAxis->label->set($labels);
$yAxis->label->setColor(new DarkGray());
$yAxis->label->setAlign(LABEL_RIGHT);
$yAxis->label->setFont(new Tuffy(7));
$yAxis->label->move(-5, 0);
$tick = new Tick(0, 2);
$yAxis->addTick('minor', $tick);
$tick = new Tick(11, 5);
$yAxis->addTick('major', $tick);
$yAxis->setNumberByTick('minor', 'major', 3);
$xAxis->setYCenter($yAxis, 0);
$yAxis->setXCenter($xAxis, 0);
$xAxis->draw($driver);
$yAxis->draw($driver);
for ($x = -10; $x <= 10; $x += 0.1) {
    $p = Axis::toPosition($xAxis, $yAxis, new Point($x, cos($x) * 4));
    $driver->point(new Red(), $p);
}
// Vertical axis
$axis = new Axis();
//$axis->line->setThickness(2);
$axis->setRange(8, -8);
$axis->setPadding(10, 10);
$axis->line->setLocation(new Point(20, 260), new Point(380, 380));
$tick = new Tick(0, 4);
$axis->addTick('minor', $tick);
$tick = new Tick(11, 8);
$axis->addTick('major', $tick);
$axis->setNumberByTick('minor', 'major', 3);
$axis->draw($driver);
$graph->draw();