Geospatial dashboard
# **Case Study: Creating an Interactive Geospatial Dashboard for Routine Immunization**
## **Introduction**
### **Project Overview**
The project aimed to develop an interactive geospatial dashboard using Shiny, providing insights into Routine Immunization (RI) and Cold Chain Equipment (CCE) functionality across different states in Nigeria.
### **Objectives**
1. Visualize the distribution of Cold Chain Equipment.
2. Provide a breakdown of Routine Immunization services in each state.
3. Create an interactive map allowing users to explore functionality details by clicking on specific states.
## **Technology Stack**
### **Shiny Modules**
We employed modularization to enhance code organization and maintainability. Two key modules were created:
- **`riMapModule`**: Manages the interactive map and state functionality details.
- **`riOverviewModule`**: Presents an overview of CCE and RI services.
### **Key Packages**
- **sf:** Used for handling geospatial data.
- **leaflet:** Employed for creating interactive maps within the Shiny application.
- **bslib:** Provided Bootstrap-themed layouts for the UI.
- **thematic:** Utilized for customizing the CSS theme.
## **Project Structure**
### **Modularization**
The project was structured to promote code modularity, with separate R scripts for each Shiny module (**`riMapModule`** and **`riOverviewModule`**), promoting code reusability and ease of maintenance.
### **Directory Layout**
```
- app.R
- R/
- riMapModule.R
- riOverviewModule.R
- data/
- health_care_facilities_geo.rds
```
## **Development Process**
### **Data Processing**
Geospatial data on health care facilities was loaded and processed using the **`sf`** package. CCE and RI service statistics were calculated for each state.
### **Interactive Maps**
The **`leaflet`** package was employed to create interactive maps. Each state was represented as a circle marker with clusters to drill-down to hospital (facility) level with pop-up det …