See image attached ...
So, if I'm correct, you're placing your image (in red) onto the graph (in black).
Let us know if that is the correct idea of what you're doing.
EDIT:
Here's what I came up with ...
PHP Code:
<?php
// Highlight point of an image based on coordinates.
// Make-up some Coordinates (for testing purposes)
$x=-5000;
$y=5000;
// Generate Image & determine width X Height
$image = imagecreatefromjpeg("yourpicture.jpg");
$imageWidth = imagesx($image);
$imageHeight = imagesy($image);
// Determine the center of the image.
$imageCenterWidth = $imageWidth/2;
$imageCenterHeight = $imageHeight/2;
// Your coordinate system is -9999 to 9999,
$divx = $imageCenterWidth/9999;
$divy = $imageCenterHeight/9999;
$px = $imageCenterWidth + abs(round($x * $divx));
if($x<0){
$px = $imageCenterWidth - abs(round($x * $divx));
}
$py = $imageCenterHeight + abs(round($y * $divy));
if($y>0){
$py = $imageCenterHeight - abs(round($y * $divy));
}
// Do your pixel or ttf (text) thing here.
// Set the text or pixels at $px,$py
// Output & Free Memory
header("Content-type: image/jpeg");
imagejpeg($image);
imagedestroy($image);
?>