GeoFuse is a Location Intelligence Tool that can easily link any Statistical Data with Geographic Data and display informative Thematic Maps.
These Thematic Maps are rendered server-side using GeoServer mapping server for fast display, even with very dense statistical and geographic data sets.
The statistical data can be uploaded in CSV format, and a map will be created if the first column name of the CSV data matches a specific column name in the attribute table of the map data. A point map data will also be created if the last 2 columns of the CSV contain lon(Longitude)/lat(Latitude) information.
- 2011 Earthquake Data that is filtered by its Timestamp data.
- Traffic Violations Count linked to OSM Road data set
- Census Data of each defined Election Area Polygon
- download the source code and build a WAR file using Maven
mvn clean install
- copy the created WAR file into tomcat_dir/webapps directory
- start tomcat
- create a database and install PostGIS
createdb geofuse
psql -c "CREATE EXTENSION postgis" geofuse
psql -c "CREATE EXTENSION postgis_topology" geofuse
- create the schemas that will contain the dummy and metadata tables found in createtabs.sql
psql -f createtabs.sql geofuse
- create the deltemp function that will delete the temporary files
psql -f deltemp.sql geofuse
- add map layers (polygons/lines/points) which will later be used for thematics. it will be best to place the table into the created "geodata" schema.
-
Name the new Store as geofuse and set the database parameter to the geofuse database created. Set the schema parameter to geodata
-
Set the layer name as geolink and the SQL Statement as
select a.*,the_geom from %linktab% a,%maptab% b where a.col0 = b.%mapcol%
- Set the View Parameters to the values below and erase the values of the Validation regular expression (正規表現を検証)
linktab = geodata.dummy
maptab = geodata.mapdummy
mapcol = mapcol
-
Press the Refresh button to update the Columns list. Change the SRID of the the_geom column to 4326 and press the Save Button.
-
After Pressing the Save button, set the Bounding Box Parameters to -180 -90 180 90 in the main layer creation page and then Save.
-
Create another SQL View Layer using the procedure set above. Set the layer name as geolink_pt and the SQL Statement as below
select * from %linktab%
- Set the View Parameters to the values below and erase the values of the Validation regular expression (正規表現を検証)
linktab = geodata.dummy_pt
-
Press the Refresh button to update the Columns list. Change the Geometry Type to Point and the SRID of the the_geom column to 4326 and press the Save Button.
-
After Pressing the Save button, set the Bounding Box Parameters to -180 -90 180 90 in the main layer creation page and then Save.
Insert the following for each map layer that will be used to create thematic
- link colunm (i.e. 'prefocode)
- Map table name with schema (i.e. 'geodata.prefectures')
- created geoserver view name (i.e. 'geofuse:geolink')
- type of layer (i.e. 'polygon'))
insert into geofuse.maplinker values ('prefcode', 'geodata.prefecture', 'geofuse:geolink', 'polygon');
In your browser, go to http://localhost:8080/geofuse/
NOTE: This application will try to get only metric (numeric) fields to display in the Thematic attribute list. For numeric ID fileds (i.e. Prefecture-ID,Country-ID,etc.), add a suffix "-ID" to the fieldname so that it will not show in the attribute list.
tomcat_dir/webapps/GeoFuse/classes/properties/
database.propertiess
thematic.properties
Adding new postgis table
Adding new background layer for printing
Adding new colorscheme
/webapps/geothematics/WEB-INF/classes/properties/thematic.properties
NOTE: the ColorNames and Colors should have equal number of items, otherwise no color choices will appear in the Colors list of the web page.
To be able to upload large CSV Data into GeoFuse through Form POST, the maxPostSize
Connector parameter has to be added and modified in Tomcat's server.xml Configuration File:
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1"
redirectPort="8443" maxPostSize="104857600" />
This will also apply if AJP is used.
Released under GPL.