How to download and try this example

Usage: pl -gif -map clickmap_hit.htm

Uses the data file hitcount.dat

See also hitcount2.

#setifnotgiven CGI = "" #proc getdata file: hitcount.dat // the following filter strips seconds from the time value, // then builds a ddMmmyyyy date and connects it with the time // value (separated by a dot) pf_fieldnames: datetime nbytes filter: ##set TIME = @@4 ##set TIME = $substring(@@TIME,1,5) @@3@@2@@6.@@TIME @@7 // use proc processdata to sum nbytes for each unique time value #proc processdata action: count fields: datetime nbytes // set field names for the result data set.. fieldnames: datetime nbytes // #proc print // label: After transform: nrecords=@NRECORDS nfields=@NFIELDS // set up plotting area with datetime in X and autorange on the y axis. #proc areadef clickmapurl: @CGI?dt=@@XVAL title: Intranet web page hits rectangle: 1 1 6 2.5 xscaletype: datetime ddMmmyyyy.hh:mm xrange: 26Sep1999.00:00 02Oct1999.23:59 yautorange: datafield=nbytes nearest=20000 margin=50000 lowfix=0 yaxis.stubs: inc 50 1000 yaxis.labeldistance: 0.6 frame: yes // do x axis showing day of week and y axis #proc xaxis stubs: inc 1 day stubformat: Www stubslide: 0.4 minorticinc: 6 hours // do a 2nd X axis with month and day #proc xaxis stubs: inc 1 day stubformat: Mmmdd stubslide: 0.4 stubdetails: adjust=0,-0.14 // do a 3rd, hidden X axis with stubs every 6 hours, for the clickmap.. #proc xaxis stubs: inc 6 hours tics: none axisline: none stubomit: * clickmap: grid // use proc yaxis again to do grid lines at every 100 kB #proc yaxis grid: color=orange gridskip: min ticincrement: 100 1000 // make bar graph #proc bars locfield: datetime lenfield: nbytes thinbarline: color=green truncate: yes