How to setup jpgraphs and wxgraphs

My hardpath.php is located at:

http://www.lesdiefenbach.org/wx/jpgraph-1.22/ttf/hardpath.php

The results I get when running it are:

/home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/

dafuser,

Use the rain_1hr.php in an image tag, like in the directions above.

And if you are getting a file not found error (I am too) then make sure the file is there. If it is there it may not work but you should not get a file not found error.

Here is my results:

/home/content/k/4/r/k4rcb/html/weather/jpgraphs-1.22/ttf/

Rick

I deleted the wxgraphs and jpgraph-1.22 directories. I downloaded fresh copies and uploaded them to my web site. I put test.php and hardpath.php in wxgraphs and jpgraphs/ttf/

http://www.lesdiefenbach.org/wx/wxgraphs/test.php - This works fine
http://www.lesdiefenbach.org/wx/wxgraphs/hardpath.php - This works fine

http://www.lesdiefenbach.org/wx/jpgraph-1.22/ttf/test.php - This works fine
http://www.lesdiefenbach.org/wx/jpgraph-1.22/ttf/hardpath.php - This works fine

Both jpgraph-1.22 and wxgraphs can be accessed by my browsers

All my weather files are located in /wx

My graphsconf.php in the wxgraphs folder looks like this:

//where are your clientraw*-files and JPGraph relative to where this file is
//note you should only need to change the jpgraph directory if you do not use standard names
$hostloc = “${/wx}/”; //must have trailing slash
$jploc = “${WEBROOT}/jpgraph-1.22/src/”; //must have trailing slash

My jpg-config.inc.php in the jpgraph-x.xx/src folder looks like this

// TTF_DIR:
// Directory where TTF fonts can be found. Must end with ‘/’
//
// The default values used if these defines are left commented out are:
//
// UNIX:
// CACHE_DIR /tmp/jpgraph_cache/
TTF_DIR /home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/
// MBTTF_DIR /usr/share/fonts/ja/TrueType/
//
// WINDOWS:
// CACHE_DIR $SERVER_TEMP/jpgraph_cache/
// TTF_DIR $SERVER_SYSTEMROOT/fonts/
// MBTTF_DIR $SERVER_SYSTEMROOT/fonts/
//
//------------------------------------------------------------------------
// DEFINE(“CACHE_DIR”,“/tmp/jpgraph_cache/”);
DEFINE(“TTF_DIR”,“/home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/”);
// DEFINE(“MBTTF_DIR”,“/usr/share/fonts/ja/TrueType/”);

//-------------------------------------------------------------------------

I have the aerial font files loaded in /wx/jpgraph-1.22/ttf

I’m calling the images using www.lesdiefenbach.org/wx/imagetest.php using:

I don’t see anything but broken images. When I try to view the individual images at:

http://www.lesdiefenbach.org/wx/wxgraphs/month_baro.php

I get this error:

Parse error: parse error, unexpected ‘/’ in /home/content/d/a/f/dafuser/html/wx/wxgraphs/graphsconf.php on line 7

Trying http://www.lesdiefenbach.org/wx/wxgraphs/month_rain.php gets the same error:

Parse error: parse error, unexpected ‘/’ in /home/content/d/a/f/dafuser/html/wx/wxgraphs/graphsconf.php on line 7

Looks like it can’t find the clientraw files for some reason. Line 7 in my files shows it’s looking for the clientraw files:

//$clientraw = get_raw(“${hostloc}clientraw.txt”);
//$clientrawextra = get_raw(“${hostloc}clientrawextra.txt”);
$clientrawdaily = get_raw (“${hostloc}clientrawdaily.txt”);

The client raw files are in my /wx directory

http://www.lesdiefenbach.org/wx/clientraw.txt

12345 5.8 4.7 16 26.4 31 983.0 0.0 0.0 0.0 0.000 0.000 24.8 25 0.0 4 0.0 0 0 0.0 0.0 0.0 0.0 -100.0 -100.0 -100.0 0 0 0 14 42 47 Weather_from_the_shores_of_Lake_Granbury-2:42:47_PM 0 0 5 1 100 100 100 100 100 100 100 26.4 26.8 26.7 10.9 5 Dry -1.0 7 7 7 8 8 8 8 8 8 8 8 8 8 8 5 5 5 5 5 5 12.2 7.9 8314.5 1/5/2008 27.2 11.9 26.7 10.9 0.0 7 6 6 7 7 6 5 4 6 5 25.7 25.9 26.2 26.2 26.2 26.2 26.5 26.6 26.6 26.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 26.3 10.9 26.1 9.5 0 — — 38 0 0 -100.0 -100.0 -100 0 0 0 0 0.0 25.0 22.3 24.9 990.0 983.0 11 14:07 12:47 25.9 11.0 13.6 7.3 7 2008 0.0 1 -1 1 47 32 65 48 23 36 14 44 45 33 0.0 0.0 5.4 !!C10.37g!!

Does this help troubleshooting? It’s probably something minor I have messed up.

Here are the two variables I use:

$hostloc = “${WEBROOT}/”; //must have trailing slash
$jploc = “${WEBROOT}/jpgraph-1.22/src/”; //must have trailing slash

dafuser,

I think yours should read:

$hostloc = “${WEBROOT}/wx/”; //must have trailing slash
$jploc = “${WEBROOT}/wx/jpgraph-1.22/src/”; //must have trailing slash

Maybe a hint for people who have a webhost in safemode (just like me)
Only use abolute paths, like the hardpath one.

So in graphsconf.php the lines to your jpgraph and clientraw dir, remove the webhost part ( ${WEBROOT}/ ) and just write out the full path.
That does the job!

I gave that a try but still get the same error where it looks like it can’t find the clientraw files. They are in the /wx directory.

<?php // Obtain Basic Environment $WEBROOT = $_SERVER['DOCUMENT_ROOT']; //========================================== //where are your clientraw*-files and JPGraph relative to where this file is //note you should only need to change the jpgraph directory if you do not use standard names $hostloc = /home/content/d/a/f/dafuser/html/wx/; //must have trailing slash $jploc = "/home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/src/"; //must have trailing slash

I fixed the problem and have the graphs working here http://www.lesdiefenbach.org/wx/graphs.php

It’ saying

“You have specified a min value with SetAutoMin() which is larger than the maximum value ussed for the scale. This is not possible.”

I think the error is coming from the month_baro.php.

Could you tell us what you found and how you fixed yours so we can fix ours?

Thanks,

Rick

In the jpg-config.inc.php I did not the WEBROOT variable as suggested above in this thread.

// CACHE_DIR /tmp/jpgraph_cache/
// TTF_DIR /home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/
// MBTTF_DIR /usr/share/fonts/ja/TrueType/
//
// WINDOWS:
// CACHE_DIR $SERVER_TEMP/jpgraph_cache/
// TTF_DIR $SERVER_SYSTEMROOT/fonts/
// MBTTF_DIR $SERVER_SYSTEMROOT/fonts/
//
//------------------------------------------------------------------------
// DEFINE(“CACHE_DIR”,“/tmp/jpgraph_cache/”);
DEFINE(“TTF_DIR”,“/home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/”);
// DEFINE(“MBTTF_DIR”,“/usr/share/fonts/ja/TrueType/”);

//-------------------------------------------------------------------------

I also had a space or two in the line DEFINE(“TTF_DIR”,“/home/content/d/a/f/dafuser/html/wx/jpgraph-1.22/ttf/”);

After I removed the spaces and started using the path information supplied by the hardpath.php in place of the WEBROOT variable it started working.

I will give that a try. Thanks for sharing.

Rick

I have a question, and a bit of advice:

Advice first: I (evidently) have a windows server, and if I call my fonts folder ttf as instructed here, something in the code interprets the “\t” as a tab which results in the path to the font folder becoming corrupt. I renamed ttf to fonts and lots of stuff immediately started to work…

Now the question: Not everything works:
http://www.kingsteignton-weather.co.uk/WXGraphs/wxgraphs_test.html
http://www.kingsteignton-weather.co.uk/jpgraph-1.22/src/Examples/testsuit.php

The error message is truncated so I can’t see exactly what’s going on:
http://www.kingsteignton-weather.co.uk/jpgraph-1.22/src/Examples/bargradex1.php
but there still appears to be something wrong with the fonts.
Does anyone know what I have done wrong?

These are the relevant lines from jpg-config.inc.php:
//------------------------------------------------------------------------
// DEFINE(“CACHE_DIR”,“/tmp/jpgraph_cache/”);
DEFINE(“TTF_DIR”,“e:\domains\k\kingsteignton-weather.co.uk\user\htdocs\jpgraph-1.22\fonts/”);
// DEFINE(“MBTTF_DIR”,“/usr/share/fonts/ja/TrueType/”);

//-------------------------------------------------------------------------

I’ll admit that the Windows path with the wrong slashes looks really dicey - I see everyone else here has Linux servers…

I’m not sure but I don’t think the fonts folders should reference a drive letter.

http://www.kingsteignton-weather.co.uk/jpgraph-1.22/fonts/hardpath.php
I’ve no idea how to supply the path on a windows server then…

I’ve just checked my files (I run Apache on Windows here as a test server) and my paths are defined with forward slashes ‘/’ not the usual backslash and it works, and yes it should reference the drive letter on Windows.

Stuart

Stuart,
Thanks for checking. I’ve replaced the ""s with "/"s but unfortunately that made no difference.
It’s really weird that most of the graphs seem to work, but a few don’t.
I can’t think what I’ve done wrong. If I try to directly access one of the php files that don’t work (in IE6) I get:

Notice: Undefined variable: datat in e:\domains\k\kingsteignton-weather.co.uk\user\htdocs\WXGraphs\winddir_1hr.php on line 81
JpGraph Error: HTTP headers have already been sent.
Caused by output from file winddir_1hr.php at line 81.
Explanation:
HTTP headers have already been sent back to the browser indicating the data as text before the library got a chance to send it’s image HTTP header to this browser. This makes it impossible for the library to send back image data to the browser (since that would be interpretated as text by the browser and show up as junk text).
Most likely you have some text in your script before the call to Graph::Stroke(). If this texts gets sent back to the browser the browser will assume that all data is plain text. Look for any text, even spaces and newlines, that might have been sent back to the browser.

For example it is a common mistake to leave a blank line before the opening “<?php”.

I don’t know what that means, but I haven’t fiddled with any of the files.

At a guess it looks like you dont have jpgraph_scatter.php installed with the other jpgraph stuff as at least a couple of the graphs failing use a scatter plot and need this file. It should be in the JPGraphs package.

Stuart

Nope… I just checked and everything in the downloaded tar file is also there on the server.
It’s probably something really dumb that I’ve done, or not done, but I’m struggling to figure it out…

Hi

I am trying to set this up but get an error I have GD and this has been confirmed by the test.php, The gd version is the php supplied version and not the standalone.

This is a linux server running php 5.2

Any help much appreciated :smiley:

Steve

There’s an option for that, right now I cannot remember where… Oh yes its in the graphconf.php which should be set to false. If that is set correctly then you may need to edit the individual graph files to turn it off.

Stuart