1033 Submitted to IEEE Vis 2024 Research application/design study Lee Mason is
with Queen’s University Belfast and the National Cancer Institute. E-mail:
<EMAIL_ADDRESS>Blánaid Hicks is with Queen’s University Belfast. E-mail:
<EMAIL_ADDRESS>Jonas Almeida is with the National Cancer Institute.
E-mail<EMAIL_ADDRESS>
# ClusterRadar: an Interactive Web-Tool for the Multi-Method Exploration of
Spatial Clusters Over Time

Lee Mason0000-0002-7814-099X  Blánaid Hicks0000-0002-5730-9469  and Jonas S.
Almeida0000-0002-7883-7922

###### Abstract

Spatial cluster analysis, the detection of localized patterns of similarity in
geospatial data, has a wide-range of applications for scientific discovery and
practical decision making. One way to detect spatial clusters is by using
local indicators of spatial association, such as Local Moran’s I or Getis-Ord
Gi*. However, different indicators tend to produce substantially different
results due to their distinct operational characteristics. Choosing a suitable
method or comparing results from multiple methods is a complex task.
Furthermore, spatial clusters are dynamic and it is often useful to track
their evolution over time, which adds an additional layer of complexity.
ClusterRadar is a web-tool designed to address these analytical challenges.
The tool allows users to easily perform spatial clustering and analyze the
results in an interactive environment, uniquely prioritizing temporal analysis
and the comparison of multiple methods. The tool’s interactive dashboard
presents several visualizations, each offering a distinct perspective of the
temporal and methodological aspects of the spatial clustering results.
ClusterRadar has several features designed to maximize its utility to a broad
user-base, including support for various geospatial formats, and a fully in-
browser execution environment to preserve the privacy of sensitive data.
Feedback from a varied set of researchers suggests ClusterRadar’s potential
for enhancing the temporal analysis of spatial clusters.

###### keywords:

Spatial, temporal, spatial clustering, spatial autocorrelation, geospatial,
GIS, interactive visualization, visual analytics

The main dashboard of the ClusterRadar tool, showing the various plot panels
and the graphical tooltip. The dashboard is divided into two rows of plots:
the panels in the top row show the geospatial distribution of the cluster
assignments, and the panels in the bottom row show various additional details
about the results. The five main panels are: a) the primary cluster map panel,
c) the zoomed map reel panel, d) the statistical density plot panel, e) the
cluster assignments cell plot panel, and f) the statistical time-series plot
panel. In this screenshot, the user has hovered over a location (Monmouth
County, NJ) showing b) the graphical tooltip, which gives additional
information about that location’s data and cluster assignments over time.
Because the user is hovering over a specific location, the bottom row plots
show results related to that location. The user has also selected a sub-region
around Florida, and that region is consequently shown in the zoomed map reel
panel. The data shown in this screenshot is yearly US county-level age-
adjusted cancer mortality data from the CDC, from 1999-2020. ClusterRadar can
be accessed at https://episphere.github.io/ClusterRadar

##  1 Introduction

Space plays a critical role in many real-world phenomena, where the proximity
of entities in a system often effects the strength and nature of interactions
[77, 80, 76]. This idea is succinctly captured in Tobler’s first law of
geography, which states that "everything is related to everything else, but
near things are more related than distant things" [76, 51]. The field of
geospatial analysis offers a powerful set of methods for understanding these
relationships [58, 11]. Techniques like spatial clustering, machine learning,
spatial statistics, and network analysis allow analysts to uncover informative
relationships within geospatial data [64, 32, 1]. The growing availability of
geospatial data, coupled with an increasingly interconnected world, mean that
sophisticated geospatial techniques are increasingly important in driving
scientific discovery and supporting informed decision making [32, 11].

One valuable application of spatial analysis is the detection of spatial
clusters: groupings of neighboring geospatial features which exhibit
significant similarity across certain attributes [32, 79]. For example, a
spatial cluster might be a collection of neighboring counties with similar
rates of breast cancer. Spatial cluster detection is a widely employed
technique in geospatial analysis, crucial for advancing scientific
understanding of complex systems and tackling practical challenges [42, 79,
32]. Spatial clustering has been extensively applied across disciplines,
including cancer cluster detection in epidemiology [35], crime cluster
analysis in criminology [62], and the study of weather events in climatology
[48]. Robust spatial cluster detection methodologies, particularly those
founded on statistical rigor, empower analysts to expand beyond simple visual
pattern recognition in maps [4].

The field of spatial cluster analysis continues to evolve, addressing the
expanding analytical requirements of researchers across an increasingly
diverse set of disciplines [3, 58, 11]. There is a growing need to expand the
scope of spatial clustering methods, including the deeper integration of
temporal data, and better support for the comparison of results across
multiple methods. [11, 32, 46, 33]. Despite the potential benefits, tools
which directly support these advancements remain limited and often require
specialized knowledge, a significant problem as interest in spatial analysis
continues to grow among individuals with a diverse set of skillets [3].

Here, we introduce ClusterRadar, a web-tool designed to meet the growing need
for a user-friendly environment in which to analyze spatial clusters over time
and across multiple methods. ClusterRadar runs fully on the client-side in the
user’s browser, avoiding the need for installation and preserving the privacy
of the user’s data. The core feature of the tool is an interactive dashboard
consisting of five panels, each providing a different perspective on the
methodological and temporal aspects of multi-method, spatiotemporal clustering
results. In this paper, we provide details of the methods used in the tool,
describe the design of the dashboard, discuss the tool’s implementation, and
provide an analysis of initial feedback from researchers with varied
backgrounds. The main contributions of this work are:

  * •

ClusterRadar: an interactive web-tool that allows users to perform spatial
clustering and explore the results in an interactive dashboard, with a unique
focus on the comparison of results across multiple methods and from multiple
time points. ClusterRadar can be accessed at
https://episphere.github.io/ClusterRadar

  * •

A set of interactive visual elements designed to help an analyst interpret
multi-method, longitudinal spatial clustering results. Each of these elements
is designed to show a different aspect of the results, making effective
interpretation more accessible to a diverse set of users.

  * •

An analysis of feedback for ClusterRadar from multiple users of varied
backgrounds. This feedback could prove valuable in the design of future
analytical environments seeking to expand the scope of spatial clustering
analysis.

##  2 Background overview

###  2.1 Geospatial data

Geospatial data comprises data points explicitly linked to geographic
locations on the Earth’s surface. These references are typically given as
points (representing precise coordinates), lines (representing paths or
routes), or areas (polygonal regions) [37]. Geospatial data can employ various
coordinate systems, such as latitude and longitude, to define spatial
locations. Areal data, such as countries or census regions, is highly
prevalent because the often standardized and familiar area definitions
facilitate integration across multiple data sources [12]. While less common,
line data (e.g., roads) sometimes holds analytical value. Point data can often
be aggregated into areas, which can simplify analysis, improve statistical
power, or facilitate linkage with other datasets [37].

###  2.2 Spatial cluster analysis

Spatial clusters are defined in a number of ways, depending on the type of
geospatial data and the specific analytical goals being tackled. Broadly, a
spatial cluster is a grouping of geographically related features that exhibit
a substantial degree of concentration or similarity [32, 79]. There are many
different approaches to spatial clustering, including partition clustering,
hierarchical clustering, density-based clustering, and LISA-based clustering
[79, 32]. LISA-based clustering methods use local indicators of spatial
association (LISAs) to determine whether each location belongs to a spatial
cluster [52, 8]. They are popular due to their robust statistical foundation,
interpretability, and wide-spread implementation in different analytical
environments [32, 15].

###  2.3 Spatial autocorrelation

Spatial autocorrelation is a fundamental concept in spatial analysis
describing the extent to which geographically proximate locations exhibit
similar attributes [30, 8]. Spatial autocorrelation can be quantified using
several different statistics, the most prominent being Moran’s I and Geary’s C
[53, 28]. Both of these statistics indicate whether or not a dataset exhibits
a greater degree of spatial autocorrelation than would be expected by random
chance, but they take different numerical approaches to do so. Spatial
autocorrelation can be positive, meaning that locations which are near each
other tend to exhibit similar attribute values, or negative, meaning that
locations which are near each other tend to exhibit dissimilar attribute
values.

Global spatial autocorrelation statistics are only capable of indicating
whether or not spatial autocorrelation is present in a dataset but not at
which locations it occurs [8]. In reality, geospatial datasets often exhibit
pockets of both positive and negative spatial autocorrelation, alongside
regions which don’t show any substantial spatial autocorrelation, and it can
be useful to analyze this heterogeneity. For this purpose, local spatial
autocorrelation statistics are required. Unlike global spatial autocorrelation
statistics, local spatial autocorrelation statistics are a property of each
location in the dataset, indicating whether a specific location is similar to
its neighbors (a spatial cluster), or dissimilar to its neighbors (a spatial
outlier). The majority of global spatial autocorrelation statistics have local
counterparts, such as Local Moran’s I and Local Geary’s C [8]. Local spatial
autocorrelation statistics are one (major) subset of local indicators of
spatial association (LISA), which cover a broader range of local association
relationships [8].

###  2.4 Local Indicators of Spatial Association (LISA)

A local indicator of spatial association (LISA) is a statistical measure that
quantifies some degree of spatial association between a particular location
and its neighbors within a geospatial dataset [8]. In addition to local
spatial autocorrelation statistics, a prominent example of a LISA is the
Getis-Ord Gi/Gi* family of statistics, local indicators which detect whether
or not a location belongs to "hot-spot" or "cold-spot". Hot-spots are
statistically significant clusters of high values, while cold-spots are
statistically significant clusters of low values [57, 31]. Unlike Getis-Ord
Gi/Gi*, Local Moran’s I and Local Geary’s C are incapable of directly
detecting hot-spots and cold-spots, they can only detect whether or not a
location is significantly similar or dissimilar to its neighbors. On the other
hand, Getis-Ord Gi/Gi* are incapable of detecting spatial outliers. While
Local Moran’s I and Local Geary’s C are not directly capable of detecting hot-
spots and cold-spots, additional analysis is often performed to distinguish
hot-spots and cold-spots among areas exhibiting significant local spatial
autocorrelation [8]. All of the aforementioned LISAs (Local Moran’s I, Local
Geary’s C, and Getis-Ord Gi/Gi*) are frequently used for detecting spatial
clusters, though the spatial clusters should be interpreted differently due to
the different goals of the methods. For more information on the formulation
and interpretation of these statistics, see Section 5.

##  3 Related Work

###  3.1 Temporal analysis of spatial clusters

There are several ways to incorporate temporal data into the analysis of
spatial clusters. One approach utilizes methods specifically designed for the
detection of spatiotemporal clusters, such as space-time scan statistics,
spatiotemporal models, and modified spatial statistics [41, 7, 39, 43, 71].
These approaches, while potentially powerful, can be complex and their results
difficult to interpret [7]. An alternative approach is to apply static spatial
cluster detection methods to data across different time points, comparing the
resulting clusters over time. This longitudinal approach allows an analyst to
use the rich suite of static spatial clustering methods available, which are
often easier to interpret than dedicated spatiotemporal methods and have wider
support in geospatial analysis software (especially in software accessible to
non-expert users). This longitudinal approach has been applied to a wide
variety of problems, including analyzing temporal variations in clusters of
obesity [34], dengue cases [68], HIV/AIDS [83], healthcare inequalities [23],
vegetation fragmentation [40], and more.

###  3.2 Multi-method analysis of spatial clusters

There are many different methods for detecting spatial clusters and they often
produce vastly different results [32]. Several works compare different spatial
clustering methods on various geospatial datasets, both real and simulated.
For example, [32] compares seven different spatial clustering methods of
different types, including two LISA-based methods: Local Moran’s I and Getis-
Ord Gi*. The paper describes the substantial differences between the methods
and the difficulties in choosing an appropriate method for a given problem.
Other relevant works have compared LISA-based clustering methods with scan
statistic-based clustering methods [33, 46], and different LISA-based methods
to each other [31, 8, 47, 18, 2]. Due to differences in results from different
LISA-based clustering methods, many comparative works recommend that multiple
methods be applied in tandem [33, 46, 31, 2, 38]. This approach is extensively
followed in the literature, with many geospatial clustering analyses applying
more than one method [65, 24, 25, 40].

###  3.3 Interactive spatial dashboards

Spatial dashboards have become a popular environment in which to analyze
spatial data [61, 73, 72, 22]. There is an extensive and growing body of work
regarding these dashboards, including works which introduce novel spatial
dashboards which cover specific spatial analytical techniques or specific
spatial datasets [61, 73, 26]. There is also a growing body of work in the
literature regarding the design of spatial dashboards [81], including works
which attempt to address some of the challenging problems such as the use of
color in maps [17, 19], how temporal data can be integrated into spatial
visualization [6, 5, 59, 72, 22], and how carefully designed interactivity can
improve the power of spatial environments [69, 20, 66]. The COVID-19 pandemic
saw a proliferation of spatial dashboards, familiarizing the concept to a
wider user-base and increasing broad interest across disciplines [61, 78, 72].

###  3.4 Spatial clustering software

Several applications and libraries support spatial cluster analysis. ArcGIS, a
commercial software, offers supports for Local Moran’s I and Getis-Ord Gi*
[70]. Open-source alternatives exist, such as QGIS [54] (with limited LISA-
based clustering via plug-ins) and CrimeStat [44] (specializing in crime data
analysis using methods like Local Moran’s I and Getis-Ord Gi/Gi*). Programming
libraries like PySAL (Python) and spdep (R) support LISA-based clustering but
require coding expertise [63, 14]. GeoDa, an open-source tool dedicated to
spatial analysis, is a strong choice for LISA-based methods [10]. It offers an
interactive interface for analysis and visualization, but doesn’t support
temporal analysis or the direct comparison of different methods. SaTScan
supports spatiotemporal cluster analysis but focuses on scan statistic-based
methods and doesn’t support LISA-based approaches [16]. While most tools
require local installation (some with limited support for different operating
systems), web-based options like GeoDa-Web and its associated JavaScript
library (jsgeoda) are emerging, though currently with limited features [45].

##  4 Design considerations

We have formulated five key design considerations based primarily on important
challenges and analytical ideals identified in the literature.

  * •

D1: Representation of temporal dynamics of spatial clusters. Spatiotemporal
analysis is rapidly gaining importance across diverse disciplines [11, 55,
71]. Historically, a major shortcoming in spatial analysis has been neglecting
temporal dynamics [75]. However, the growing availability of user-friendly
spatiotemporal software is steadily overcoming this limitation [16]. One
valuable approach involves the longitudinal analysis of spatial clusters over
time, which reveals how spatial clusters evolve [74, 83, 23]. Despite the
utility of this technique, software with dedicated support remains scarce.
This highlights the need for applications that prioritize the clear
representation of temporal dynamics within spatial clusters.

  * •

D2: Comparison of results from multiple spatial clustering methods. Spatial
clustering encapsulates a wide variety of approaches, often producing vastly
different results [32, 38]. There is limited theoretical guidance on how to
select an appropriate method [32]. Comparative studies of spatial clustering
methods often recommend using multiple methods simultaneously and interpreting
the results in conjunction [33, 46, 31, 2, 38] — a common approach across
multiple disciplines. This highlights the need for applications which perform
multiple spatial clustering methods at once and facilitate the comparison of
results across methods.

  * •

D3: Application of varied interactive graphical elements to simplify the
analysis of complex results. Representing temporal and multivariate geospatial
results can be challenging to the competing demands of the various visual
elements — this is a well-recognized problem in geospatial visualization [6,
59, 50, 56]. A multi-plot, interactive dashboard can tackle these challenges
by representing different aspects of the data in different visualizations,
drawing on the unique strengths of each to improve overall clarity [56, 67,
36]. Interactivity further eases the complexity of this analysis, revealing
details only as they are required, and helping users stay oriented while
exploring the data [67, 21]. This highlights the need for applications which
employ multi-faceted, interactive graphics to facilitate the exploration of
complex geospatial results.

  * •

D4: Goal focused and appropriately scoped design to ensure usability for non-
expert users.  Powerful geospatial software often presents a steep learning
curve for non-experts because it requires a robust understanding of complex
geospatial concepts [3, 82]. As geospatial methods becomes increasingly
integrated into diverse analytical pipelines, the need for user-friendly
geospatial analytical applications grows. To make geospatial methods more
accessible, a goal-driven approach is required [82]. This approach focuses on
the desired analytical outcomes, rather than requiring users to understand the
low-level steps required to achieve them. While feature-rich geospatial
software offers versatility, it can overwhelm non-experts with its complexity
[49]. This highlights the need for simpler, goal-oriented tools designed for
specific analytical tasks.

  * •

D5: In-browser web implementation to ensure FAIR distribution and privacy
preservation. There has been a recent emphasis in science on adherence to the
FAIR principles (findability, accessiblity, interoperability, and
reproducability), including for software [27, 13]. Due to its ubiquity,
familiarity, and inherent support for information sharing, the web provides a
naturally FAIR place in which to distribute software. However, server-reliant
software requires the user to upload their data, which may violate privacy
requirements of sensitive data (common in fields like epidemiology). This
highlights the need for applications which are distributed on the web and run
fully client-side inside the sandbox of the user’s browser.

##  5 Methods

In this section, we will go into greater detail about the spatial clustering
methods used in ClusterRadar.

###  5.1 Normalization

Given a list of spatially-referenced values $X=[x_{1},x_{2},...,x_{n}]$ the
first step is to z-score normalize each value, which simplifies the downstream
calculations:

$z_{i}=\frac{(x_{i}-\mu)}{\sigma}$ (1)

Where $\mu$ and $\sigma$ are the mean and standard deviation over all values
in the dataset.

###  5.2 Weight matrix

Local indicators of spatial association require a definition of the
relationships between locations in the dataset. This is encapsulated in a
weight matrix. Given a dataset with $n$ locations, a weight matrix is a
$n\times n$ square matrix $W$ where element $W_{i,j}$ quantifies the
relationship between location $i$ and location $j$. In its simplest form, a
binary weight matrix takes $W_{ij}=1$ if location $i$ is a neighbor of
location $j$ , and ${W_{ij}}=0$ otherwise. The definition of a "neighbor" is
the decision of the analyst: the most common approach uses simple areal
contiguity. For simplicity in the later calculation, we will row-normalize the
weight matrix:

$\forall i\in\\{1,2,\ldots,n\\},\quad\sum_{j=1}^{n}W_{ij}=1$ (2)

Choosing an appropriate weight matrix is challenging and depends on the
specific parameters and goals of the task at hand. Local indicators of spatial
association are highly sensitive to the choice of weight matrix.

###  5.3 Moran’s I

The Moran’s I statistic is a popular local indicator of spatial association,
implemented in most major geospatial software packages and libraries [53, 15].
It measures spatial autocorrelation. Assuming a row-normalized weight matrix
$W$, Moran’s I is calculated as follows:

$I=\frac{\sum_{i}^{n}\sum_{j}^{n}W_{ij}\cdot z_{i}\cdot z_{j}}{n-1}$ (3)

A significant negative value for the Moran’s I statistic indicates negative
spatial autocorrelation, a significant positive value indicating positive
spatial autocorrelation, and a value close to 0 indicates no spatial
autocorrelation (spatial randomness). The Local Moran’s I statistic addresses
the need for a more granular assessment of spatial autocorrelation by breaking
the global spatial autocorrelation into a separate value for each location
[8]. The Local Moran’s I statistic for location $i$ is calculated as follows:

$I_{i}=\frac{z_{i}\cdot lag_{i}}{n-1}=\frac{z_{i}\cdot\sum_{j}^{n}W_{ij}\cdot
z_{j}}{n-1}$ (4)

Note the spatial lag term, $lag_{i}=\sum_{j}^{n}W_{ij}\cdot z_{j}$. Spatial
lag is a useful concept when interpreting local spatial autocorrelation; it is
essentially the weighted mean of a location’s neighbors.

A significant negative value for Local Moran’s I indicates that the location
is a spatial outlier (significantly different from its neighbors), a
significant positive value indicates that the location belongs to a spatial
cluster (significantly similar to its neighbors), and a non-significant value
indicates that the location does not exhibit significant local spatial
autocorrelation. Results can be further categorized by looking at how the
value and spatial lag of a location compare to the mean, which is easy to do
with z-score normalized values because the mean is equal to 0. The possible
assignments are "high-high" (if the value and lag are both positive), "low-
low" (if the value and lag are both negative), "high-low" (if the value is
positive and the lag negative), and "low-high" (if the value is negative and
the lag positive).

###  5.4 Geary’s C

Like Moran’s I, Geary’s C is a statistic which measures spatial
autocorrelation but the two methods differ in their approach: Moran’s I
measures spatial autocorrelation using the correlation between neighboring
values whereas Geary’s C measures spatial autocorrelation using the square
differences between neighboring values [57, 31]. Geary’s C has less widespread
support in geospatial software than Moran’s I. Geary’s C is calculated as
follows:

$C=\frac{\sum_{i}^{n}\sum_{j}^{n}W_{ij}\cdot z^{2}}{2n}$ (5)

Geary’s C takes values 0 or greater. The values are interpreted by their
proximity to 1, with values less than 1 indicating positive spatial
autocorrelation, and values greater than 1 indicating negative spatial
autocorrelation. Values close to 1 indicate spatial randomness.

Like for Moran’s I, there is a local equivalent of the Geary’s C to provide a
more granular assessment of spatial autocorrelation [9]. Local Geary’s C is
calculated as follows:

$C_{i}=\sum_{j}^{n}w_{ij}\cdot(z_{i}-z_{j})^{2}$ (6)

In essence, the Local Geary’s statistic is a weighted sum of the squared
difference between a location’s value and its neighboring values. The
statistic takes values 0 or greater. Unlike for the global Geary’s C, the
value of the local Geary’s C statistic has no inherent meaning — the "no
spatial autocorrelation" point is no longer equal to 1. Instead, it must be
interpreted with significance testing: values that are significantly lower
than expected indicate positive spatial autocorrelation, values significantly
higher than expected indicate negative spatial autocorrelation, and values not
significantly different than expected indicate spatial randomness. Like for
Local Moran’s, a Local Geary’s C result can be further specified by inspecting
the location’s value and spatial lag. However, unlike for Local Moran’s I this
is not always possible. If the Local Geary’s C statistic indicates positive
spatial autocorrelation, then the following assignments can be made: "high-
high" (if the value and lag are both positive), "low-low" (if the value and
lag are both negative), and "other positive spatial autocorrelation" (the
remaining cases). If the Local Geary’s C statistic indicates "negative spatial
autocorrelation" then this result can’t be specified any further.

###  5.5 Getis-Ord G

The Getis-Ord G family of statistics differ from Moran’s I and Geary’s C in
that they do not measure spatial autocorrelation, but instead directly measure
hot-spots and cold-spots [31]. A hot-spot is a group of neighboring locations
with significantly higher than expected values, whereas a cold spot if a group
of neighboring locations with significantly lower than expected values. The
Getis-Ord General G statistic is a global measure that indicates whether a
geospatial dataset exhibits clustering overall and whether that clustering is
generally of high values or low values. The Getis-Ord General G statistic is
calculated as follows:

$G=\frac{\sum_{i=1}^{n}\sum_{j=1}^{n}W_{ij}\cdot z_{i}\cdot
z_{j}}{\sum_{i=1}^{n}\sum_{j=1}^{n}\cdot z_{i}\cdot z_{j}},\ \ \text{where}\
j\neq i$ (7)

Getis-Ord General G must be interpreted in relation to a reference
distribution (usually obtained using permutation testing, see Section 5.6). If
the observed value of G is significantly higher than the expected value then
the dataset exhibits overall clustering of high values (hot-spots), if the
observed value of G is significantly lower than the expected value then the
dataset exhibits overall clustering of low values (cold-spots)

The Getis-Ord Gi* and Getis-Ord Gi statistics are two local statistics which
indicate whether a specific location belongs to a hot-spot or cold-spot. The
Getis-Ord Gi* statistic is calculated as follows:

$G_{i}^{*}=\frac{\sum_{j=1}^{n}W_{ij}\cdot
z_{j}}{\sqrt{\frac{1}{n-1}\cdot[n\cdot(\sum_{j=1}^{n}W_{ij}^{2})-1]}}$ (8)

The Getis-Ord $G_{i}$ statistic is similar, except it doesn’t include the
value at the focal location:

$G_{i}=\frac{\sum_{j=1}^{n}W_{ij}\cdot
z_{j}-\bar{z}(i)}{S(i)\cdot\sqrt{\frac{1}{n-1}\cdot[n\cdot(\sum_{j=1}^{n}W_{ij}^{2})-1]}}$
(9)

Where $\bar{z}(i)$ and $S(i)$ are the mean and variance over all z-normalized
values excluding the value at location $i$. The interpretation of Getis-Ord Gi
and Gi* is similar. If the observed value of G/G* is significantly less than 0
then that location exhibits a clustering of high values (a hot-spot). If the
observed value of G/G* is significantly greater than 0 then that location
exhibits a clustering of low values (a cold-spot). If the observed value is
not significantly different from the expected value, this indicates that there
is no spatial clustering of values.

###  5.6 Assessing significance

In order to correctly interpret indicators of spatial association, it is
necessary to determine whether or not a value is significant. The standard
approach is to use a permutation test because, unlike an analytical derivation
of the statistic’s theoretical distribution, it avoids imposing unrealistic
assumptions upon the data [8]. A permutation test on a spatial statistic
involves shuffling the data values across the spatial locations a number of
times, calculating the statistic for each shuffle, and then using those values
to build an empirical distribution against which the actual value can be
tested. This approach differs slightly for global and local spatial
statistics: for global statistics, all values are shuffled, for local
statistics, the focal location’s value is fixed and all other values are
shuffled. A pseudo p-value is calculated by first counting the number of
permuted values of the statistic which are more extreme than than the actual
value:

$R=\min(|\\{s\in S\mid s>v\\}|,M-min(|\\{s\in S\mid s>v\\}|)$ (10)

Where $M$ is the number of permutations performed, $S$ is the set of permuted
values for the statistic, and $v$ is the actual value of the statistic on the
dataset. The pseudo p-value can now be calculated from $R$ and $M$:

$p*=\frac{R+1}{M+1}$ (11)

The interpretation of a pseudo p-value differs somewhat from the
interpretation of a traditional, analytical p-value. It is important to
remember that the value of $p*$ depends on the number of permutations
performed. The usual p-value cutoffs (e.g. p < 0.05, p < 0.01) are often used
when interpreting pseudo p-values, but the analyst should be aware of the
dependence on $M$ and avoid thinking of pseudo p-values as equivalent to
traditional p-values. For this reason, we use $p*$ to refer to pseudo p-values
in this manuscript and within the ClusterRadar web-tool.

To get the upper and lower significance boundaries, we can re-arrange the $p*$
equation and set $p*$ to a specific p-value cut-off threshold $p*=p_{cutoff}$,
giving:

$R_{cutoff}=\lfloor p_{cutoff}\cdot(M+1)-1\rfloor$ (12)

To apply this index, we need $S^{\prime}$, a numerically sorted list of the
permuted values $S$. With $S^{\prime}$ and $R_{cutoff}$, the calculation for
the upper and lower cut-off values for the statistic are:

$s_{lower}=S^{\prime}_{R_{cutoff}}$ (13) $s_{upper}=S^{\prime}_{M-R_{cutoff}}$
(14)

In order to simplify the interpretation of the spatial statistics in the
ClusterRadar tool, the values are z-score normalized with the permuted set of
values $S$.

##  6 The ClusterRadar web-tool

ClusterRadar is a web-tool that allows users to perform spatial cluster
analysis and inspect the results in an interactive dashboard. The tool is
fully in-browser and executes entirely on the client side. ClusterRadar
performs spatial clustering using several popular local indicators of spatial
association: Local Moran’s I, Local Geary’s C, Getis-Ord Gi, and Getis-Ord
Gi*. By default, the tool will perform only one of the Getis-Ord methods (Gi*)
due to their similarity, but the user is free to enable and disable methods to
suit their needs. ClusterRadar operates on areal geospatial data. The
dashboard (see ClusterRadar: an Interactive Web-Tool for the Multi-Method
Exploration of Spatial Clusters Over Time) consists of five plot panels, each
providing a different perspective on the results. Each panel is interactive,
allowing the user to gain more details about a specific element through mouse
events such as hovering, clicking, and dragging. The panels are interactively
linked: when the user interacts with one panel that interaction is reflected
in the other panels. In addition to the plot panels, ClusterRadar has a tool
bar with options for uploading and configuring data, enabling and disabling
methods, switching coloring modes, and downloading the data. To encourage use
among a diverse set of users, ClusterRadar also features a short tutorial
which describes the tool’s purpose and highlights its features.

###  6.1 Coloring

Figure 1: Examples of how colors are assigned using the individual and
aggregate color schemes. This plot shows examples of how the individual
cluster assignments are aggregated into a single aggregate color. The
aggregate color scheme visually represents the level of agreement between
clustering methods. Locations are assigned a core color: red for "high-high"
or "hot-spot", blue for "low-low" or "cold-spot". The final color is adjusted
based on the presence of non-conflicting assignments: assignments that don’t
match the core assignment but don’t directly contradict it either. A purple
color is used for conflicts: a deeper purple for more significant conflicts. A
yellow color is used for other assignments that do not fall naturally into the
high or low cluster groups. Examples in this plot include total agreement in
the main positive groups (a and b), partial agreement (c, d, e), minor
conflict (f), major conflict (g), other (h,i) and not-significant (j).

The primary cluster map panel, zoomed map reel panel, and cluster assignments
cell plot panels (see ClusterRadar: an Interactive Web-Tool for the Multi-
Method Exploration of Spatial Clusters Over Timea, c, and e) are all colored
according to the same scheme. The tool supports several coloring modes: one
for each local indicator and an aggregate mode that summarizes the assignments
across all enabled methods. The single indicator modes employ a simple
categorical color scheme wherein each location is colored according to the
assignment from that method. As discussed in Section 5, the set of possible
assignments differs by indicator, and therefore the color scheme for each
single indicator mode differs slightly. However, for coherency, similar
concepts are assigned the same color across modes, e.g. a ’high-high’
assignment from Local Moran’s I and a ’hot-spot’ assignment from Getis-Ord Gi*
are both assigned a red color. We will refer to "high-high" and "hot-spot"
assignments with the joint label of "high cluster", and "low-low" and "cold-
spot" assignments with the joint label of "low cluster".

The aggregate color scheme attempts to show, at a glance, the extent to which
the different clustering methods agree on their assignments at a location. The
scheme employs linear color scales to represent agreement, with bolder, more
saturated colors representing a greater degree of agreement and muted, less
saturated colors representing a lesser degree of agreement. A location at a
specific timestep is first assigned a core group color: red, if a high cluster
assignment is present among the assignment set, or blue, if a low cluster
assignment is present among the assignment set. If both are present, then the
location is a assigned a deep purple color representing a major conflict.

With the core color assigned, the final color is decided by the proportion and
nature of non-conflicting contradictory assignments in the assignment set. A
non-conflicting contradictory assignment is one which does not strictly fall
into the same assignment group as the core assignment, but also does not
necessarily contradict it. For example, if a location is assigned "high-high"
by Local Moran’s I and "not significant" from both Getis-Ord Gi* and Geary’s
C, then the core assignment group is "high cluster" and each of the "non
significant" assignments are treated as non-conflicting contradictory
assignments. At timestep $t$, the assigned color at location i is calculated
as follows:

$\text{color}_{t,i}=\text{col}(g_{t,i})+h_{t,i}\cdot[\text{col}(g_{t,i})-\text{col}(\text{"not
significant"})]$ (15)

Where $\text{col}(g_{t,i})$ returns the an RGB color space vector representing
the color assignment for the core group $g_{t,i}$. The core color assignments
are a red color for the "high cluster" group, a blue color for the "low
cluster" group, and a light grey for the "not significant" group. The factor
$h_{t,i}$ is a scalar encapsulating the degree of non-conflicting
disagreement:

$h_{t,i}=\frac{1}{|L|}\cdot\sum_{l\in\text{L}_{t,i}}d(g_{t,i},l)$ (16)

Where $\text{L}_{t,i}$ is the set of cluster assignments for location $i$ at
time step $t$, and $d(g,l)$ returns a number between 0 and 1 representing the
extent of disagreement between core group $g$ and assignment $l$. The extent
of disagreement is $d(g,l)=0$ for labels which belong in the group and
$d(g,l)=1$ for non-conflicting contradictory labels of the group. There is
also a special case of $d(g,l)=0.5$ when the core group is "high cluster" or
"low cluster" and the the assignment $l$ is "other positive spatial
autocorrelation". This assignment is from the Geary’s C method when it
recognizes positive spatial autocorrelation but is unable to determine its
exact nature — a quirk of the method. It does not necessarily contradict
either of the positive core group assignments, but it is not a confident
agreement either, hence our decision to assign it "partial" agreement.

There are three special cases. The first is the aforementioned major conflict
case where two of the assigned labels at a location belong to conflicting
groups — this is assigned a deep purple. Sometimes assignments occur which,
depending on how the methods are interpreted, can be considered a less serious
conflict. For example, if Local Moran’s I assigns "low-high" and Getis-Ord Gi*
assigns "hot-spot", then both assignments recognize a potential positive
clustering of high valued neighbors, but there is a potential disagreement on
the overall assignment. The third special case is when only miscellaneous
assignments and "not-significant" assignments are found in the assigned
labels. For a graphical explanation of the aggregate color scheme, see Fig. 1.

###  6.2 Primary cluster map panel

The most prominent panel in the ClusterRadar dashboard is the primary cluster
map panel: a categorical choropleth plot that colors each location by its
cluster assignments (see ClusterRadar: an Interactive Web-Tool for the Multi-
Method Exploration of Spatial Clusters Over Timea). The choropleth plot is
interactive: when the user hovers their cursor over a location, that location
is brought into focus until they move the cursor elsewhere. The statistical
density plot, cluster assignments cell plot, and statistical time-series
panels are updated to show information pertaining to the in-focus location;
see the individual descriptions of these panels for more details. The user can
also keep a location in focus by clicking on it, meaning it will not be taken
out of focus when their cursor leaves that location. When a user hovers their
cursor over a location, a graphical tooltip appears showing additional
information about that location (see Section 6.7). By default, the primary
cluster map panel shows data from the most recent time point but the user can
look through different time points using the time slider above the plot.
Finally, when the user clicks and drags on the map, a selection box will
appear allowing them to select multiple locations at once for further
inspection in the zoomed cluster reel panel.

###  6.3 Zoomed cluster reel panel

The zoomed cluster reel panel (see ClusterRadar: an Interactive Web-Tool for
the Multi-Method Exploration of Spatial Clusters Over Timec) allows the user
to directly inspect how cluster assignments have changed over time in a
selected sub-region of space. When the user has selected a sub-region using
the primary cluster map panel, this panel will show a vertically stacked
"reel" of choropleth plots — one for each time step in the dataset. The user
can then scroll through this reel to see the evolution of cluster assignments
over time. Each of the choropleth plots in this panel have the same
interactive features as the primary choropleth, excluding the ability to
select the zoomed sub-region of space.

###  6.4 Density plot panel

Figure 2: Examples of the density plot panel. The content of the density plot
panel depends on whether a specific location is in focus. If so, the panel
shows the local indicators (b), otherwise it shows the global indicators (a).
Each density plot shows the empirical distribution of its respective statistic
in light grey, the upper and lower significance cut-offs as dashed grey lines,
and the statistic’s actual value as a solid red line. If the red line is
outside the dashed lines, then the statistic’s value is significant. In the
examples here, all global statistics are significant, and the Local Geary’s C
statistic is also significant. The Local Moran’s I statistic is close to
significant.

The density plot panel consists of density plots showing the empirical
distributions of the enabled spatial statistics (see Fig. 2), allowing the
user to gain a better understanding of each statistic’s distribution and
significance assignments. The empirical distribution is calculated using the
permutation approach described in Section 5.6. If the aggregate coloring mode
is selected, then a density plot is shown for each enabled statistic,
otherwise a single density plot is shown with the corresponding statistic of
the selected single indicator mode. The content of the density plot panel also
depends on whether or not a specific location is in focus. If so, the panel
will show information regarding the local statistic(s) at that location.
Otherwise, the panel will show the global statistic(s) for the whole dataset.
Each density plot consists of a filled area representation of the statistic’s
empirical distribution, a solid red line indicating the statistic’s value, and
two dashed grey lines indicating the upper and lower significance boundaries
at the user’s chosen significance cut-off (0.05 by default). The filled area
is generated using kernel-density estimation over the permuted values.

###  6.5 Cluster assignments cell plot panel

Figure 3: Examples of the cluster assignments cell plot panel. The content of
this panel depends on whether a specific location is in focus. If no location
is in focus, the panel shows a) the global cluster assignments over time. If a
location is in focus, the panel shows b) the local cluster assignments over
time. In the latter case, an additional row is shown at the bottom
representing the color assignments from the aggregate color scheme.

The cluster assignments cell plot panel shows a cell plot with time on the
x-axis and spatial clustering method on the y-axis (see Fig. 3). Each cell is
colored according to the cluster assignment for that method at that timestep.
If no location is in focus, then the cell plot shows the assignments from the
global statistics. If a location is in focus, then the cell plot shows the
assignments from the local statistics for that location. In the aggregate
coloring mode, an additional row is added to the bottom of the cell plot which
shows the aggregate color assignments. This helps the user understand how the
aggregate color scheme works. The cell plot provides the most complete summary
of the multi-method cluster assignments over time, but it is limited to a
single location at a time.

###  6.6 Statistical time-series panel

Figure 4: Examples of the time-series plot panel. The content of the panel
depends on whether a specific location is in focus. If so, the panel shows b)
the global statistics, otherwise it shows a) the local statistics. Each time-
series plot shows the value of the respective statistic over-time as a solid
red line, with the currently visualized time point marked with a black dot. A
dashed horizontal pink line shows the first value as a reference. The dashed
grey lines show the upper and lower significance boundaries.

The statistical time-series panel allows the user to inspect the spatial
statistics over time (see Fig. 4). If the aggregate viewing mode is selected,
the time-series plot is split into sub-plots for each enabled method.
Otherwise, a single plot for the current mode’s method is shown. Within each
plot there is a solid red line tracking the statistic’s actual value over time
and two dashed dark-grey lines tracking the p-value cutoffs over time. As with
the cluster assignments cell plot and statistical density plot panels, the
statistic(s) represented in the time-series plot depends on the current
interaction state. If a specific location is in focus, then the plot will show
the enabled local statistic(s) for that location. If no location is in focus,
then the plot will show the enabled global statistic(s) for the entire
dataset.

###  6.7 Graphical tooltip

Figure 5: The graphical tooltip, showing an example of the user hovering over
a location. If the user has configured a geospatial name field, the top of the
tooltip will show the locations name, otherwise it will show the location’s
geospatial ID. Below the name field is a time-series plot showing the
location’s value over time. Attached to the right axis of the time-series is a
density plot showing the density of values across all locations and time
points, with the current time point and location’s value represented by a red
line and text label. Below the density plot is a single-row cell plot showing
the color assignments over time for the selected color mode. In this example,
the color mode is the aggregate color scheme.

The graphical tooltip appears on the choropleth plots when the user hovers
over a specific location, in either the main cluster map panel or the zoomed
cluster reel panel (see Fig. 5). The tooltip allows the user to quickly get
more information about a location. At the top of the tooltip is location’s
name or ID. Below that is a time-series plot showing the location’s value over
time. The axis is marked with the mean (over the whole dataset across all time
points) and the mean plus or minus 3 standard deviations. Attached to the
right axis of the time-series is a density plot showing the distribution of
values across all time points. On this density plot, the current value is
shown a red line labelled with the value in text. At the bottom is a single
row cell plot showing the color assignments over-time for the in-focus
location; the exact coloring shown depends on the enabled mode and is
identical to the coloring shown on the map.

###  6.8 Implementation details

ClusterRadar is implemented in vanilla JavaScript and runs entirely on the
client-side in the user’s web browser. The basic graphical elements of the
dashboard were rendered using the Observable Plot library, with interaction
and additional visual elements added using D3, HTML, and CSS. Currently, there
is no JavaScript library which supports the full set of spatial indicators
required in ClusterRadar. The jsgeoda library supports most of them using
WebAssembly but it doesn’t provide estimates of the empirical distributions or
significance cut-offs. Therefore, all methods were re-implemented in
JavaScript. In the permutation tests, the statistics are calculated in full
for each permutation — no look-up tables or other estimation-based
optimizations are used. This gives the most accurate pseudo p-values but the
calculations can take a long time to run on large datasets. To ensure a
responsive user interface and parallelize computation, web workers are used.
When results for a given configuration are calculated, they are cached on the
user’s machine using IndexedDB so that the user does not need to re-run the
calculations every time they visit the tool. For more details on the
implementation, see the documentation and code linked in the Supplemental
Materials.

##  7 Usage scenario: US cancer mortality

Figure 6:  Example snapshots of ClusterRadar on a dataset of US county-level
age-adjusted mortality rates, from the CDC. These illustrate some of the
potential insights that ClusterRadar can help uncover. a) A snapshot of the
statistical time-series panel showing the global spatial statistics. There
appears to be a general increase in these statistics, especially for Moran’s
I. b) An edited snapshot of the cluster reel panel, showing the sudden
appearance of a high cluster in Northern Michigan in 2020. c) A snapshot of
the primary cluster map panel in which the user is hovering over a central
area from the high cluster in Northern Michigan. The time-series shows a
sudden spike in the age-adjusted mortality rate in 2020 and the cell plot
shows a concomitant assignment to a high cluster. d) An edited snapshot of the
cluster reel panel, showing the emergence of a low cluster in the east coast
around New Jersey, New York, and Connecticut. e) A snapshot of the primary
cluster map panel in which the user is hovering over a central area (Morris
County, NJ) from the low cluster on the east coast. The time-series show a
gradual decline in age-adjusted mortality rates in that county. f) A snapshot
of the statistical time-series panel showing the local statistics for Morris
County, NJ.

To show how ClusterRadar may be applied to real world data, we analyzed age-
adjusted US county-level cancer mortality with a domain expert in geospatial
epidemiology. The data was collected from CDC Wonder, with a filter for the
"malignant neoplasms (C00-C97)" group of the IDC-10 113 cause list. The data
is yearly from 1999 to 2020. We uploaded the data to the ClusterRadar tool and
inspected the results in the dashboard. We noticed the following:

  * •

An overall trend of increased global spatial autocorrelation, especially
according to the Moran’s I statistic (see Fig. 6a). The expert suggested this
may be a result of overall increased spatial structure in cancer risk factors,
including growing spatial disparities in smoking, obesity, and socioeconomic
factors.

  * •

An emerging cold-spot in the north-eastern US around New Jersey, Pennsylvania,
New York, and Connecticut (see Fig. 6d). The tooltip shows a steady decline in
age-adjusted mortality rates since 1999, with a concomitant assignment to low
clusters (see Fig. 6e). The statistical time-series plots reflect this this
trend, with increasing local spatial autocorrelation from Local Moran’s I and
Geary’s C, and cold-spot clustering from Getis-Ord Gi* (see Fig. 6f). The
expert suggested that this may be caused by growing affluence in these coastal
and near-coastal counties, factors associated with lower cancer mortality.
Shifting demographics in these counties may be a contributing factor, though
further investigation would be required to disentangle all the possible
factors involved.

  * •

A large and fluctuating hot-spot in the south, around Kansas, Tennessee, and
Ohio. The expert noted that her eye was drawn immediately to this hot-spot,
and said that the higher rates of cancer in this region of the US are well-
studied, believed to be driven by a variety of risk factors including poverty,
smoking rates, and obesity. She agreed that the fluctuating nature of this
hot-spot is a good example of why longitudinal analysis is important: any one
time-point may present a misleading picture of confidence in the cluster’s
exact shape, but overall we can observe a consistent cluster of high cancer
rates in that general region of the US.

  * •

A large cold-spot encompassing much of the western US. The expert noted that
the cold spots in the coastal counties are expected, given the typically
higher socioeconomic status of those counties. She also cautioned about
placing too much emphasis on the other counties due to low populations — the
cluster draws the eye due to its sheer geographic size, but encapsulates a
relatively small number of people. On top of that, there is a lot of
suppressed data in that part of the country due to small population sizes.

  * •

A sudden hot-spot in northern Michigan in 2020 (see Fig. 6b). The graphical
tooltip shows that this primarily results from a sudden spike in Oscoda
County, MI (see Fig. 6c). Oscoda County has a relatively small population
which can lead to unstable rates. This suggests that this particular cluster
may just be noise, a result which emphasizes the importance of longitudinal
analysis of spatial clusters.

The expert emphasized that these observations are purely exploratory, and that
robust statistical testing would need to be done to investigate them further.

##  8 Feedback

To provide an initial evaluation of ClusterRadar, we sent an evaluation survey
to individuals with a diverse set of analytical interests. All survey
participants have a research background, with interests spanning data science,
public health, geospatial epidemiology, and computer science. The form and a
snapshot of its responses at the time of writing are available in the
supplemental materials.

All participants responded that they had a basic understanding of spatial data
and analysis, but only one participant claimed expert knowledge of the
methods; the remaining participants expressed a mixture of unfamiliarity and
basic understanding. This is a useful test base for ClusterRadar because the
tool is designed for non-expert users.

When asked if the insight provided by temporal analysis of spatial clusters is
worth the additional complexity, 4 of 6 (66%) of participants answered
affirmatively, and one participant answered that it is potentially useful but
may not be worth the additional complexity. When asked whether the comparison
of multiple clustering methods is useful, 2 of 6 (33%) of users answered
affirmatively, 3 of 6 (50%) answered that it is potentially useful but may not
be worth the additional complexity, and 1 of 6 answered they remained
uncertain but enjoyed viewing the comparison across methods.

In the evaluation of the tool itself, 3 of 6 (50%) participants said
ClusterRadar is successful in its primary goal of making the analysis of
spatial clusters over time more accessible. The remaining participants said it
is "somewhat" successful, with one stating that the tool is more descriptive
than analytical. One participant expressed a desire for more information on
the methods involved in the tool and how they differ.

The participants were asked the extent to which the major features of
ClusterRadar are useful. The primary cluster map panel and the graphical
tooltip were deemed "very useful" by all 6 participants. The following
features received a mixture of "very useful" and "somewhat useful" responses:
the zoomed map reel panel (66% "very useful"), the cluster assignments cell
plot panel (50% "very useful"), the statistical time-series panel (66% "very
useful"), the aggregate color scheme (66% "very useful"). The density plot
panel received 50% "very useful", 33% "somewhat useful", and a single "not
useful" response: that participant commented that they did not know how to
interpret the density plots. All participants said that the tool’s
implementation as a web-application was "very useful". One participant
commented that the plot choices were "very insightful".

##  9 Discussion

In this paper, we have introduced ClusterRadar, a web-tool which confronts the
challenge of multi-method, temporal exploration of spatial clusters using
multi-faceted interactive visualization. In this section, we will discuss some
of the problems we tackled while creating this tool.

###  9.1 Visualizing large volumes of complex results

A core challenge in multi-method, spatiotemporal cluster analysis is managing
the potentially large volume of results. In our example (Section 7), applying
just 3 clustering methods across 22 time points to 3,143 counties yields over
200,000 individual results. ClusterRadar addresses this complexity through a
multi-plot dashboard that follows the visual analytics principle of "overview
first, details-on-demand" (D3). This approach allows users to gain a broad
understanding of the results before drilling down into specific details. This
philosophy is reflected in several parts of the tool, including the responsive
nature of the density, cell, and time-series panels. As discussed in Section
6, each of these visualizations initially represent global statistics but
changes to represent local statistics when the user interacts with a specific
location. The global statistics provide the "overview", and the local
statistics provide the "details-on-demand". This approach is well supported by
the visual analytics literature, and ClusterRadar follows established
principles to simplify the difficulties which may arise when exploring
multiple visualizations at once, including the principle of maintaining the
user’s mental map between plots using linked interaction [21]. Feedback from a
varied set of users regarding the plots was generally positive. However, some
plots (e.g. the primary cluster map) received greater feedback than others
(e.g. the statistical density plots), so a future effort to provide
alternatives and collect feedback may benefit the tool’s overall success in
representing complex results.

###  9.2 Visualizing multi-variate results over space

The results generated by ClusterRadar are both spatial and multi-
variate/multi-method (D2). Visualizing the spatial distribution of multi-
variate results is a well-documented challenge in the geospatial visualization
literature and a broad range of solutions have been proposed. Once again, we
took a visual analytics approach, with the aggregate color scheme offering the
overview, and user interaction providing further details. The aggregate color
scheme provides a way for the user to inspect the level of agreement between
results at a glance. While some finer distinctions between methods might be
obscured in this simplification, it provides a valuable starting point. For
users wishing to delve deeper into the nuances, the interactive, linked views
provide the necessary granularity to dissect and compare results with greater
precision. The feedback from a varied set of users was generally positive,
with some expressing confusion over certain aspects of the color scheme.
Future work should tackle this confusion, perhaps with a further simplified
color scheme or more detailed documentation.

###  9.3 Visualizing temporal results over space

A challenging element of the ClusterRadar results is that they are both
spatial and temporal (D1) — elements that can be difficult to visualize
together. Like with multi-variate spatial data, the problem of representing
spatiotemporal data in plots is well documented in the visualization
literature. There are two key approaches: contrasting time and contrasting
space [59]. In the former, some representation of the temporal results (e.g. a
time-series) is plotted at each geospatial location, and in the latter
separate geospatial plots are used to represent data from different time-
points. The contrasting time approach can be overwhelming when there are a lot
of geospatial locations and the temporal results are complex, as is the case
in ClusterRadar, and so we decided on the contrasting space approach. This was
achieved using the cluster map reel panel, which stacks choropleths from
different time points on top of each other, and the interactive time-slider in
the primary cluster map panel, which allows users to "animate" the cluster
results by viewing data from different time-points. The statistical time-
series panel, cluster assignments cell plot panel, and graphical tooltip all
provide additional information on temporal elements of the results. Feedback
for this approach was positive, with all of the aforementioned elements
receiving a positive response from survey participants.

###  9.4 Usability to non-expert users

A key element in the success of novel applications is their usability and
accessibility to the target user base. In this case, our target user base is
anybody interested in the analysis of spatial clusters. While a working
knowledge of spatial data, statistical principles, and common visualizations
is beneficial, the ClusterRadar tool is designed to minimize the required
expertise. It does so in a few ways: applying a varied set of visualizations
to streamline the interpretation of the results (D3), employing a goal-focused
design philosophy (D4), and distributing the application on the web (D5).
Importantly, the user can access the application from any modern browser
without then need for installation. ClusterRadar eliminates the need for
specialized technical knowledge of the methods; users simply upload data,
configure settings, and receive results. The positive feedback from users of
varying backgrounds suggests the success of this approach, though additional
work is required to address certain confusing elements. Several individuals
expressed confusion over aspects of the tool which could potentially be
cleared up through better documentation and a refined tutorial.

###  9.5 Exploratory analysis

When inspecting the cancer mortality data in Section 7, the expert analyst
expressed the opinion that ClusterRadar is primarily an exploratory tool,
rather than an analytical one. The distinction between these concepts is
important: exploratory tools can uncover patterns worthy of further analysis
(hypothesis generation), but are not necessarily appropriate for more rigorous
inspection (hypothesis testing). Exploratory data analysis is becoming common
across disciplines, including those with well-established analytical
traditions such as epidemiology, driving a need for exploratory tools such as
ClusterRadar [29, 60]. ClusterRadar allows the user to download the results,
which an experienced analyst could then inspect in the analytical environment
of their choice (e.g. R). Further work could improve the analytical appeal of
ClusterRadar by supporting p-value correction or other techniques important in
confirmatory spatial cluster analysis.

##  10 Conclusion

ClusterRadar advances the analysis of complex spatial datasets by offering a
user-friendly environment specifically designed for interpreting temporal and
multi-method spatial clustering results. By combining diverse visual elements
with linked interaction, ClusterRadar tackles the challenges of representing
multi-variate, spatiotemporal data. The tool’s fully in-browser implementation
and goal-driven design democratize spatial cluster analysis, empowering users
across disciplines to uncover spatial patterns within their data. Feedback
from a diverse set of users validates the utility of our approach while
highlighting opportunities for further refinement.

## Supplemental Materials

The source code, documentation, and full survey responses are available at
https://github.com/episphere/ClusterRadar. A short video outlining the core
features of the tool is available at https://youtu.be/mPxj1zWg47g

###### Acknowledgements.

The authors wish to thank Rena Jones, Praful Bhawsar, Jeya Balasubramanian,
Meredith Shiels, Wayne Lawrence, and Rebecca Troisi for their help evaluating
the ClusterRadar tool. Research reported in this publication was supported by
the National Cancer Institute of the National Institutes of Health (CAS
10901).

## References

  * [1] I. Abd Jalil, A. R. A. Rasam, N. A. Adnan, N. M. Saraf, and A. N. Idris.  Geospatial network analysis for healthcare facilities accessibility in semi-urban areas.  In 2018 IEEE 14th international colloquium on signal processing & its applications (CSPA), pp. 255–260. IEEE, 2018.
  * [2] A. Abdulhafedh.  A Novel Hybrid Method for Measuring the Spatial Autocorrelation of Vehicular Crashes: Combining Moran’s Index and Getis-Ord G* Statistic.  Open Journal of Civil Engineering, 07(02):208–221, 2017. doi: 10 . 4236/ojce . 2017 . 72013
  * [3] R. Ahasan, M. S. Alam, T. Chakraborty, and M. M. Hossain.  Applications of GIS and geospatial analyses in COVID-19 research: A systematic review.  F1000Research, 9, 2020. doi: 10 . 12688/f1000research . 27544 . 2
  * [4] R. W. Amin, B. A. Fritsch, and J. E. Retzloff.  Spatial clusters of breast cancer mortality and incidence in the contiguous USA: 2000–2014.  Journal of General Internal Medicine, 34:412–419, 2019. doi: 10 . 1007/s11606-018-4824-9
  * [5] G. Andrienko, N. Andrienko, P. Jankowski, D. Keim, M.-J. Kraak, A. MacEachren, and S. Wrobel.  Geovisual analytics for spatial decision support: Setting the research agenda.  International journal of geographical information science, 21(8):839–857, 2007. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [6] N. Andrienko, G. Andrienko, and P. Gatalsky.  Exploratory spatio-temporal visualization: an analytical review.  Journal of Visual Languages & Computing, 14(6):503–541, 2003. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [7] M. Y. Ansari, A. Ahmad, S. S. Khan, G. Bhushan, and Mainuddin.  Spatiotemporal clustering: a review.  Artificial Intelligence Review, 53:2381–2423, 2020. doi: 10 . 1007/s10462-019-09736-1
  * [8] L. Anselin.  Local indicators of spatial association—LISA.  Geographical analysis, 27(2):93–115, 1995.
  * [9] L. Anselin.  A local indicator of multivariate spatial association: extending Geary’s C.  Geographical Analysis, 51(2):133–150, 2019. doi: 10 . 1111/gean . 12164
  * [10] L. Anselin, I. Syabri, and Y. Kho.  GeoDa: an introduction to spatial data analysis.  In Handbook of applied spatial analysis: Software tools, methods and applications, pp. 73–89. Springer, 2009. doi: 10 . 1007/978-3-642-03647-7_5
  * [11] A. H. Auchincloss, S. Y. Gebreab, C. Mair, and A. V. Diez Roux.  A review of spatial methods in epidemiology, 2000–2010.  Annual review of public health, 33:107–122, 2012. doi: 10 . 1146/annurev-publhealth-031811-124655
  * [12] S. Banerjee.  Spatial data analysis.  Annual review of public health, 37:47–60, 2016. doi: 10 . 1146/annurev-publhealth-032315-021711
  * [13] M. Barker, N. P. Chue Hong, D. S. Katz, A.-L. Lamprecht, C. Martinez-Ortiz, F. Psomopoulos, J. Harrow, L. J. Castro, M. Gruenpeter, P. A. Martinez, et al.  Introducing the FAIR Principles for research software.  Scientific Data, 9(1):622, 2022. doi: 10 . 1038/s41597-022-01710-x
  * [14] R. Bivand, A. Bernat, M. Carvalho, Y. Chun, C. Dormann, S. Dray, R. Halbersma, N. Lewin-Koh, J. Ma, G. Millo, et al.  The spdep package.  Comprehensive R Archive Network, Version, pp. 05–83, 2005.
  * [15] R. S. Bivand and D. W. Wong.  Comparing implementations of global and local indicators of spatial association.  Test, 27(3):716–748, 2018. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [16] R. Block.  Software review: scanning for clusters in space and time: a tutorial review of SatScan.  Social Science Computer Review, 25(2):272–278, 2007. doi: 10 . 1177/0894439307298562
  * [17] C. A. Brewer, A. M. MacEachren, L. W. Pickle, and D. Herrmann.  Mapping mortality: Evaluating color schemes for choropleth maps.  Annals of the Association of American Geographers, 87(3):411–438, 1997. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [18] M. M. Brooks.  The advantages of comparative LISA techniques in spatial inequality research: Evidence from poverty change in the united states.  Spatial Demography, 7(2):167–193, 2019. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [19] A. Brychtová.  Exploring the influence of colour distance and legend position on choropleth maps readability.  Modern trends in cartography: Selected papers of CARTOCON 2014, pp. 303–314, 2015. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [20] J. W. Crampton.  Interactivity types in geographic visualization.  Cartography and geographic information science, 29(2):85–98, 2002. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [21] W. Cui.  Visual analytics: A comprehensive overview.  IEEE access, 7:81555–81573, 2019. doi: 10 . 1109/ACCESS . 2019 . 2923736
  * [22] Z. Deng, S. Chen, T. Schreck, D. Deng, T. Tang, M. Xu, D. Weng, and Y. Wu.  Visualizing large-scale spatial time series with GeoChron.  IEEE Transactions on Visualization and Computer Graphics, 2023. doi: 10 . 1109/TVCG . 2023 . 3327162
  * [23] E. Dong, X. Sun, T. Xu, and S. Zhang.  Measuring the inequalities in healthcare resource in facility and workforce: A longitudinal study in China.  Frontiers in Public Health, 11:1074417, 2023. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [24] S. Erdogan.  Explorative spatial analysis of traffic accident statistics and road mortality among the provinces of Turkey.  Journal of safety research, 40(5):341–351, 2009. doi: 10 . 1016/j . jsr . 2009 . 07 . 006
  * [25] M. G. R. Fahad, W. C. Zech, R. Nazari, and M. Karimi.  Developing a geospatial framework for severe occupational injuries using Moran’s I and Getis-Ord Gi* statistics for southeastern United States.  Natural Hazards Review, 23(3):04022020, 2022.
  * [26] H. Figgemeier, C. Henzen, and A. Rümmler.  A geo-dashboard concept for the interactively linked visualization of provenance and data quality for geospatial datasets.  AGILE: GIScience Series, 2:25, 2021. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [27] M. García-Closas, T. U. Ahearn, M. M. Gaudet, A. N. Hurson, J. B. Balasubramanian, P. P. Choudhury, N. M. Gerlanc, B. Patel, D. Russ, M. Abubakar, et al.  Moving toward findable, accessible, interoperable, reusable practices in epidemiologic research.  American journal of epidemiology, 192(6):995–1005, 2023. doi: 10 . 1093/aje/kwad040
  * [28] R. C. Geary.  The contiguity ratio and statistical mapping.  The incorporated statistician, 5(3):115–146, 1954. doi: 10 . 2307/2986645
  * [29] A. Gelman and A. Vehtari.  What are the most important statistical ideas of the past 50 years?  Journal of the American Statistical Association, 116(536):2087–2097, 2021. doi: 10 . 1080/01621459 . 2021 . 1938081
  * [30] A. Getis.  Spatial autocorrelation.  In Handbook of applied spatial analysis: Software tools, methods and applications, pp. 255–278. Springer, 2009. doi: 10 . 1007/978-3-642-03647-7_14
  * [31] A. Getis and J. K. Ord.  The analysis of spatial association by use of distance statistics.  Geographical analysis, 24(3):189–206, 1992. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [32] T. H. Grubesic, R. Wei, and A. T. Murray.  Spatial clustering overview and comparison: Accuracy, sensitivity, and computational expense.  Annals of the Association of American Geographers, 104(6):1134–1156, 2014. doi: 10 . 1080/00045608 . 2014 . 958389
  * [33] C. E. Hanson and W. F. Wieczorek.  Alcohol mortality: a comparison of spatial clustering methods.  Social Science & Medicine, 55(5):791–802, 2002. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [34] S. M. Hughey, A. T. Kaczynski, D. E. Porter, J. Hibbert, G. Turner-McGrievy, and J. Liu.  Spatial clustering patterns of child weight status in a southeastern US county.  Applied geography, 99:12–21, 2018. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [35] G. M. Jacquez and D. A. Greiling.  Local clustering in breast, lung and colorectal cancer in Long Island, New York.  International Journal of Health Geographics, 2:1–12, 2003.
  * [36] A. Janes, A. Sillitti, G. Succi, et al.  Effective dashboard design.  Cutter IT journal, 26(1):17–24, 2013.
  * [37] K. S. Kanankege, J. Alvarez, L. Zhang, and A. M. Perez.  An introductory framework for choosing spatiotemporal analytical tools in population-level eco-epidemiological research.  Frontiers in Veterinary Science, 7:339, 2020. doi: 10 . 3389/fvets . 2020 . 00339
  * [38] B. Kiani, M. Fatima, N. H. Amin, and A. Hesami.  Comparing geospatial clustering methods to study spatial patterns of lung cancer rates in urban areas: A case study in Mashhad, Iran.  GeoJournal, 88(2):1659–1669, 2023. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [39] S. Kisilevich, F. Mansmann, M. Nanni, and S. Rinzivillo.  Spatio-temporal clustering.  Springer, 2010. doi: 10 . 1007/978-0-387-09823-4_44
  * [40] P. Kowe, O. Mutanga, J. Odindi, and T. Dube.  Exploring the spatial patterns of vegetation fragmentation using local spatial autocorrelation indices.  Journal of Applied Remote Sensing, 13(2):024523–024523, 2019. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [41] M. Kulldorff.  A spatial scan statistic.  Communications in Statistics-Theory and methods, 26(6):1481–1496, 1997. doi: 10 . 1080/03610929708831995
  * [42] M. Kulldorff and N. Nagarwalla.  Spatial disease clusters: detection and inference.  Statistics in medicine, 14(8):799–810, 1995. doi: 10 . 1002/sim . 4780140809
  * [43] J. Lee and S. Li.  Extending Moran’s index for measuring spatiotemporal clustering of geographic events.  Geographical Analysis, 49(1):36–57, 2017. doi: 10 . 1111/gean . 12106
  * [44] N. Levine.  The CrimeStat program: Characteristics, use and audience.  Geographical Analysis. Forthcoming, 2004.
  * [45] X. Li, L. Anselin, and J. Koschinsky.  Geoda web: enhancing web-based mapping with spatial analytics.  In Proceedings of the 23rd SIGSPATIAL International Conference on Advances in Geographic Information Systems, pp. 1–4, 2015. doi: 10 . 1145/2820783 . 2820792
  * [46] H. Lin, B. Ning, J. Li, S. C. Ho, A. Huss, R. Vermeulen, and L. Tian.  Lung cancer mortality among women in xuan wei, china: a comparison of spatial clustering detection methods.  Asia Pacific Journal of Public Health, 27(2):NP392–NP401, 2015. doi: 10 . 1177/1010539512444778
  * [47] Y. Lin.  An integrative study using spatial statistics and racial/ethnic composition to measure racial/ethnic residential segregation at varying scales.  Population Change and Public Policy, pp. 405–432, 2020. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [48] G. B. Lyra, J. F. Oliveira-Júnior, and M. Zeri.  Cluster analysis applied to the spatial and temporal variability of monthly rainfall in Alagoas state, northeast of Brazil.  International Journal of Climatology, 34(13):3546–3558, 2014. doi: 10 . 1002/joc . 3926
  * [49] G. Marzi.  On the nature, origins and outcomes of over featuring in the new product development process.  Journal of engineering and technology management, 64:101685, 2022. doi: 10 . 1016/j . jengtecman . 2022 . 101685
  * [50] L. McNabb and R. S. Laramee.  Multivariate maps—a glyph-placement algorithm to support multivariate geospatial visualization.  Information, 10(10):302, 2019.
  * [51] H. J. Miller.  Tobler’s first law and spatial analysis.  Annals of the association of American geographers, 94(2):284–289, 2004. doi: 10 . 1111/j . 1467-8306 . 2004 . 09402005 . x
  * [52] P. Moraga and F. Montes.  Detection of spatial disease clusters with LISA functions.  Statistics in medicine, 30(10):1057–1071, 2011. doi: 10 . 1002/sim . 4160
  * [53] P. A. Moran.  Notes on continuous stochastic phenomena.  Biometrika, 37(1/2):17–23, 1950. doi: 10 . 2307/2332142
  * [54] N. Moyroud and F. Portet.  Introduction to QGIS.  QGIS and generic tools, 1:1–17, 2018. doi: 10 . 1002/9781119457091 . ch1
  * [55] N. Nazia, Z. A. Butt, M. L. Bedard, W.-C. Tang, H. Sehar, and J. Law.  Methods used in the spatial and spatiotemporal analysis of COVID-19 epidemiology: a systematic review.  International Journal of Environmental Research and Public Health, 19(14):8267, 2022. doi: 10 . 3390/ijerph19148267
  * [56] T. Opach and J. K. Rød.  Do choropleth maps linked with parallel coordinates facilitate an understanding of multivariate spatial characteristics?  Cartography and Geographic Information Science, 41(5):413–429, 2014. doi: 10 . 1080/15230406 . 2014 . 953585
  * [57] J. K. Ord and A. Getis.  Local spatial autocorrelation statistics: distributional issues and an application.  Geographical analysis, 27(4):286–306, 1995. doi: 10 . 1111/j . 1538-4632 . 1995 . tb00912 . x
  * [58] S. Park, B. Bekemeier, and A. D. Flaxman.  Understanding data use and preference of data visualization for public health professionals: A qualitative study.  Public Health Nursing, 38(4):531–541, 2021. doi: 10 . 1111/phn . 12863
  * [59] V. Peña-Araya, E. Pietriga, and A. Bezerianos.  A comparison of visualizations for identifying correlation over space and time.  IEEE transactions on visualization and computer graphics, 26(1):375–385, 2019.
  * [60] R. W. Platt.  Invited commentary: the importance of descriptive epidemiology.  American Journal of Epidemiology, 191(12):2071–2072, 2022. doi: 10 . 1093/aje/kwac153
  * [61] S. Praharaj, P. Solis, and E. A. Wentz.  Deploying geospatial visualization dashboards to combat the socioeconomic impacts of COVID-19.  Environment and Planning B: Urban Analytics and City Science, 50(5):1262–1279, 2023. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [62] M. Quick and J. Law.  Exploring hotspots of drug offences in Toronto: A comparison of four local spatial cluster detection methods.  Canadian journal of criminology and criminal justice, 55(2):215–238, 2013. doi: 10 . 3138/cjccj . 2012 . E13
  * [63] S. J. Rey and L. Anselin.  PySAL: A python library of spatial analytical methods.  In Handbook of applied spatial analysis: Software tools, methods and applications, pp. 175–193. Springer, 2009. doi: 10 . 1007/978-3-642-03647-7_11
  * [64] B. D. Ripley.  Spatial statistics.  John Wiley & Sons, 2005. doi: 10 . 1002/0471725218
  * [65] M. S. Rosenberg, R. R. Sokal, N. L. Oden, and D. DiGiovanni.  Spatial autocorrelation of cancer in Western Europe.  European Journal of Epidemiology, 15:15–22, 1999.
  * [66] R. E. Roth.  Interactivity and cartography: A contemporary perspective on user interface and user experience design from geospatial professionals.  Cartographica: The International Journal for Geographic Information and Geovisualization, 50(2):94–115, 2015. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [67] C. M. Sack, R. G. Donohue, and R. E. Roth.  Interactive and multivariate choropleth maps with D3.  Cartographic Perspectives, (78):57–76, 2014. doi: 10 . 14714/CP78 . 1278
  * [68] S. Saita, S. Maeakhian, and T. Silawan.  Temporal variations and spatial clusters of dengue in thailand: Longitudinal study before and during the coronavirus disease (covid-19) pandemic.  Tropical medicine and infectious disease, 7(8):171, 2022. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [69] H. Schumann and C. Tominski.  Analytical, visual and interactive concepts for geo-visual analytics.  Journal of Visual Languages & Computing, 22(4):257–267, 2011. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [70] L. M. Scott and M. V. Janikas.  Spatial statistics in arcgis.  In Handbook of applied spatial analysis: Software tools, methods and applications, pp. 27–41. Springer, 2009. doi: 10 . 1007/978-3-642-03647-7_2
  * [71] Z. Shi and L. S. Pun-Cheng.  Spatiotemporal data clustering: A survey of methods.  ISPRS international journal of geo-information, 8(3):112, 2019. doi: 10 . 3390/ijgi8030112
  * [72] A. Slingsby, R. Reeve, and C. Harris.  Gridded glyphmaps for supporting spatial COVID-19 modelling.  In 2023 IEEE Visualization and Visual Analytics (VIS), pp. 1–5. IEEE, 2023. doi: 10 . 1109/VIS54172 . 2023 . 00009
  * [73] N. Sulaiman, S. K. Abid, S. W. Chan, U. Nazir, N. P. N. Mahmud, S. Latib, H. Hafidz, S. Shahlal, S. Sapuan, T. Fernando, et al.  Geospatial dashboards for mapping and tracking of novel coronavirus pandemic.  In Proc. Int. Conf. Ind. Eng. Oper. Manag, vol. 59, pp. 2336–2348, 2020. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [74] R. Tao and Y. Chen.  Applying local indicators of spatial association to analyze longitudinal data: The absolute perspective.  Geographical Analysis, 55(2):225–238, 2023. doi: 10 . 1111/gean . 12323
  * [75] C. A. Thompson, S. Ilango, J. Gibbons, A. Nara, and M.-H. Tsou.  Systematic review of geospatial approaches to breast cancer epidemiology.  Geospatial Approaches to Energy Balance and Breast Cancer, pp. 141–160, 2019. doi: 10 . 1111/j . 1538-4632 . 1992 . tb00261 . x
  * [76] W. R. Tobler.  A computer movie simulating urban growth in the Detroit region.  Economic geography, 46(sup1):234–240, 1970. doi: 10 . 2307/143141
  * [77] D. J. Unwin.  GIS, spatial analysis and spatial statistics.  Progress in Human Geography, 20(4):540–551, 1996. doi: 10 . 1177/030913259602000408
  * [78] M. Usman, H. Zhou, S. Moon, X. Zhang, P. Faloutsos, and M. Kapadia.  A multiscale geospatial dataset and an interactive visualization dashboard for computational epidemiology and open scientific research.  IEEE computer graphics and applications, 43(1):39–52, 2022. doi: 10 . 1109/MCG . 2022 . 3230444
  * [79] B. M. Varghese, A. Unnikrishnan, and K. Jacob.  Spatial clustering algorithms-an overview.  Asian Journal of Computer Science and Information Technology, 3(1):1–8, 2013.
  * [80] J. R. Weeks.  The role of spatial analysis in demographic research.  Spatially integrated social science, pp. 381–399, 2004. doi: 10 . 1093/oso/9780195152708 . 003 . 0019
  * [81] A. Yoshizumi, M. M. Coffer, E. L. Collins, M. D. Gaines, X. Gao, K. Jones, I. R. McGregor, K. A. McQuillan, V. Perin, L. M. Tomkins, et al.  A review of geospatial content in IEEE visualization publications.  In 2020 IEEE Visualization Conference (VIS), pp. 51–55. IEEE, 2020. doi: 10 . 1109/VIS47514 . 2020 . 00017
  * [82] A.-X. Zhu, F.-H. Zhao, P. Liang, and C.-Z. Qin.  Next generation of GIS: must be easy.  Annals of GIS, 27(1):71–86, 2021. doi: 10 . 1080/19475683 . 2020 . 1766563
  * [83] L. C. Zulu, E. Kalipeni, and E. Johannes.  Analyzing spatial clustering and the spatiotemporal nature and trends of HIV/AIDS prevalence using GIS: the case of Malawi, 1994-2010.  BMC infectious diseases, 14:1–21, 2014. doi: 10 . 1186/1471-2334-14-285