My GIS Portfolio
Nadia Sharif
I am a geospatial analyst and developer who uses spatial data and code to build maps and generate insights for decision making. I have recently completed my Masters of Geospatial Science degree from RMIT University in Melbourne.
I stumbled into GIS application development years ago, during my bachelor’s degree, working with Oracle Spatial and later ArcGIS developer SDKs when they were newly launched. My recent studies have given me deeper understanding of spatial analysis and introduced me to the latest tools and technologies that make GIS workflows easier to automate and validate.
This portfolio showcases some of the projects that I completed during my recent studies. I prefer using Python scripts to extract, clean and transform the data since it makes these ETL workflows reproducible and documented. After that, the spatial analysis is performed using ArcGIS, QGIS or even in some cases using the ArcPy or Python geospatial libraries. The final spatial insights are then presented using various web mapping platforms like MapBox, Leaflet, Folium, Cesium or ArcGIS JavaScript APIs or even static maps.
I understand that GIS applications are full-stack applications involving a database that might run on the cloud, a middleware server managing requests to and from the database through an API and a front-end that is built using UX best practices to present the final GIS product. I have made several such full-stack applications but had to make them offline due to cloud hosting cost. If you are interested in my work, please feel free to reach out using LinkedIn or email.
Cloud GIS: Live Melbourne Metro Trains Dashboard
Built a web map dashboard to visualize live train movements across Melbourne. This dashboard uses data from Transport Victoria Open Data APIs to show the current number of trains and their locations on each of Melbourne’s train line. The map display can be 2D or 3D as needed. Service alerts showing disruptions or planned work are also shown along with Trip information for each train showing Start time and station sequence list. Trains are added and removed as each train trip starts and ends.
This applications is built using Three-tier architecture with Transport Victoria GTFS Real-time API as backend, Express.js middleware server for fetching and enriching data from the API and NodeJS frontend using Cesium and Google 3D Tiles to visualize live train movement in an interactive map dashboard. The Transport Victoria API publishes train location data in the ProtoBuf format, the Express.js middleware server queries the API every 20s and converts this location data to GeoJSON so it is easily used by the frontend application.
This architecture ensures low-latency updates of train locations every 20 seconds and avoids exceeding API rate limit. Data from other API end points was used to display disruptions and planned works along the train network as well as live trip updates for each train trip, making this dashboard a functional digital twin of Melbourne's metro train network.
Note: This project is live and running since October 2025, however some trip updates information is not available since it needs to be updated every week by downloading from Transport Victoria website onto the Vercel middleware server.
Spatial Analysis: Longwood Bushfires Fire Impact
This project provides a geospatial assessment of the bushfire event in Longwood, located in Victoria's Northeast. Using Python-based remote sensing techniques, I analyzed the fire's footprint and impact on the local landscape.
I utilized Sentinel-2 satellite data and Python libraries like rioxarray to handle complex spatial datasets. By combining multi-dimensional satellite imagery with VicMap cadastral data, the analysis moves beyond simple mapping to provide a precise look at property-level impact.
Satellite Data Acquisition: Retrieving multispectral bands from the Copernicus program to view the landscape before and after the fire.
Burn Severity Mapping: Calculating the Delta Normalized Burn Ratio (dNBR) to distinguish between unburned areas and varying levels of fire intensity.
Impact Analysis: Performing spatial joins with official VicMap Property and Building datasets to identify specific structures and land parcels affected by the fire.
Interactive Visualization: Creating dynamic maps using Folium, allowing users to explore the fire footprint and impacted zones layer by layer.
View the colab notebook here.
View Fire Impact Folium Map here.
View Property Impact Map here.
Machine Learning: Using Association Rule Mining with Spatial Data
This project uses machine learning techniques like Association Rule Mining to generate meaningful rules using multi-source data from IoT sensors and remote sensing data from satellite imagery in the City of Melbourne.
The project integrates data with different spatial and temporal resolution into a spatial unit suitable for the application of association rule mining. The data consists of microclimate sensor data with a temporal resolution of 15 minutes, hourly pedestrian data and Normalized Vegetation Index(NDVI) data derived from Sentinel2 satellite imagery. All this data is normalized and integrated into a single dataset which is then used for Machine Learning using open-source machine learning software WEKA. The output association mining rules are then converted into policy suitable rules which can improve environmental resilience.
This project is a simplified explanation of my Masters Dissertation. I was honored to present it in the Global Smart Cities Summit cum The 4th International Conference on Urban Informatics (GSCS & ICUI 2025) held in Hong Kong on 5 - 8 August 2025 at Hong Kong Polytechnic University as an RMIT masters student through RMIT sponsorship.
Spatial Statistical Analysis: Use ABN registration location to map business activity
This project explores where business activity is concentrated across Victoria, Australia using ArcGIS Pro. Using bulk data of Australian Business Numbers (ABNs) and ABS 2021 Census population data at the postcode level, I have identified broad regional patterns of economic activity.
First ABN bulk data was downloaded from the ABN Register website. This bulk data contained all ABN registrations from all over Australia, up to postcode level in the form of XML files. I used Python Pandas library in Jupyter notebook to clean, aggregate and normalize the data according to postcodes and the join with postcode level geometry data obtained from ABS website.
Spatial statistical methods like Moran's I and Getis-Ord Gi* in ArcGIS Pro were applied to uncover insights. The findings show a clear pattern: inner Melbourne areas are "hotspots" of business activity, while outer metropolitan areas are "cold spots." I also found that different types of businesses have distinct distributions; for example, Public and Private Companies are highly centralized, while Sole Traders and Family Partnerships are slightly more spread out in inner suburbs. This analysis also identified unusual areas (outliers) with exceptionally high or low business densities.
This project demonstrates the power of spatial analysis to reveal economic trends and geographical concentrations within a region.
Note: This analysis has a major limitation and that is ABN registration location does not accurately represent the business’s actual location, also a business may operate in have several locations but is registered only once in the ABN registry.
Web GIS: 3D map showing new and proposed buildings in Melbourne City
An interactive mapping application developed using MapBox, Javascript, HTML and CSS. It shows all newly completed, approved, under construction and applied for buildings in the city of Melbourne in 3D view. The buildings can be filtered according to their building status. Clicking on a building displays all related data in the form of popup box. The data source is the City of Melbourne Open Data Team, 2024.
Web GIS: Off-Street Car parks in Melbourne City
An interactive mapping application developed using MapBox, Javascript, HTML and CSS. Users can select an area of Melbourne City to zoom in and view all different types of off-street parking. Graduated circle symbols are used to denote number of car spaces in a car park. Users can filter according to types of car parks and more details are shown using popup boxes. The data source is the Off-street car parks data from City of Melbourne Open Data Team, 2024.
Spatial Analysis: Analyzing increase in house prices in Victoria by LGAs from 1992 to 2022
This project uses Python and GeoPandas in Jupyter Notebook to analyze how much house prices have increased in Victoria from the year 1992 to 2022. The mean house price data of each LGA has been obtained from Victorian Government. The final visualization is an interactive map made using Folium.
Static Map: Commercial Off-Street Car parks in Melbourne City
This is a static map created using ArcGIS Pro and Adobe Illustrator. It shows how the number of off-street commercial carparks have decreased over the years in Melbourne City. In the line graph, you can clearly see the trend of decreasing number of off-street commercial carparks and increasing number of off-street residential carparks. The data source is the City of Melbourne Open Data Team, 2024. The task was to extract an interesting story by analyzing Off-street carparks data and tell it though a one-page static map.