# How to create mapping application with user input to dynamically weight/shade map layers

Does anyone know of any examples of web-apps that allow user-input to change variable weights used to calculate symbology?

My organization is looking to build a dynamic mapping application and while I have the tech-savvy to envision and outline the project, I don't have the coding experience to implement it myself (I've been working with GIS for close to 10 years, but I am new to development). I have access to both GeoServer and ArcGIS Server, and I'd appreciate any input on how to go about this task (FLEX vs REST vs JS vs MYSQL vs POSTGIS vs GeoServer vs ArcGIS, etc)

We are creating a series of opportunity maps based on neighborhood indicators. Essentially, we compile a set of data at the census-tract level for an MSA and convert the variables to Z-scores. Then we aggregate Z-scores to create a composite index for a certain category. We then use the composite index score to break tracts into 6 quantiles and shade them accordingly. For example:

- Cancer Risk
- Air Quality
- # of Hospitals accessible in 30 mins
- average ambulatory response time


In this example, we'd calculate Z-scores for each variable (cancer risk, air quality, etc) then add them together to create an additive index for environmental quality. Then we simply classify by quantile to create a map showing areas ranging from "Very High" to "Very Low" Environmental Quality. This would create a composite index where each variable is weighted equally. However, We would like to create an app that renders a general map using equal weights, but allows users to define variable weights as they choose. For example:

Environmental Quality

 - 30% | Cancer Risk
- 15% | Air Quality
- 10% | Hospitals
- 45% | Ambulatory Response Time


In this case, the percentages are multiplied across the Z scores to create the desired weights, the quantile ranges will be recalculated, and the map shading will be updated accordingly.

Using databases, I believe this should be a fairly straightforward coding task, but I have been unable to find any examples of similar projects.

This example using ArcGIS server 10.1 looks to be promising:

http://blogs.esri.com/esri/apl/2012/03/20/mapping-health-indicators-using-dynamic-layers-in-arcgis-server-10-1/

Though I would still welcome advice on the most appropriate API (FLEX, REST, JSON, etc) and how to begin coding the app.

Frankly, any comments whatsoever would be appreciated

-

Carto Vista (using Flash/Flex) is a good example of what can be done with your existing data.

"CartoVista is an innovative web-based mapping solution to share and publish statistical data. "

Oracle Spatial 10g or later