This website provides supporting information for the main article Linguistic traits as heritable units? Spatial Bayesian clustering reveals Swiss German dialect regions. In the main paper we used Tess to cluster Swiss German dialect data taken from the Syntactic Atlas of Swiss German (SADS). This markdown contains additional results for different setups.
These results have been obtained with the Admixture model of TESS using the least correlated syntactic phenomena of the Syntactic Atlas of Swiss German (SADS). Choosing 6 populations (\(K=6\)), we obtain the following results.
library(tmap)
library(sf)
library(pophelper)
library(dplyr)
library(RColorBrewer)
#Read clumpp results
K6 <- readQ("../../Results/CLUMPP_output/pop_K6-combined-merged.txt")
#Merging results of 6 populations
merged_data <- mergeQ(K6)[[1]]
#Import coordinates
coord<-read.table('../coordinates_wgs84.txt',header = T)
#Spatialize results
k6_results<-cbind(coord,merged_data)
#Convert data to sf format
point_data<-st_as_sf(k6_results, coords = c("X_1", "Y_1"), crs = 4326)
#Read municipalities
municipalities <- st_read(
"../../shapefiles/municipalities_voronoi.shp")
## Reading layer `municipalities_voronoi' from data source `/home/noe/Desktop/Paper/Romano_PdM/shapefiles/municipalities_voronoi.shp' using driver `ESRI Shapefile'
## Simple feature collection with 356 features and 0 fields
## geometry type: MULTIPOLYGON
## dimension: XY
## bbox: xmin: 7.025109 ymin: 45.91675 xmax: 10.09691 ymax: 47.80846
## geographic CRS: WGS 84
#Create ID in municipalities
municipalities$id <- 1:nrow(municipalities)
mypaletTESS<-c("#1F78B4","#33A02C","#E31A1C","#FF7F00","#6A3D9A",'deeppink1')
palette <-colorRampPalette(c("white", mypaletTESS[6]))
population_1_aggregated = municipalities %>%
st_join(point_data[,c('Cluster1','geometry')]) %>%
group_by(id) %>%
summarize(Cluster1 = mean(Cluster1, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_1_aggregated) +
tm_polygons("Cluster1", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
)
palette <-colorRampPalette(c("white", mypaletTESS[4]))
population_2_aggregated = municipalities %>%
st_join(point_data[,c('Cluster2','geometry')]) %>%
group_by(id) %>%
summarize(Cluster2 = mean(Cluster2, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_2_aggregated) +
tm_polygons("Cluster2", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
)
palette <-colorRampPalette(c("white", mypaletTESS[5]))
population_3_aggregated = municipalities %>%
st_join(point_data[,c('Cluster3','geometry')]) %>%
group_by(id) %>%
summarize(Cluster3 = mean(Cluster3, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_3_aggregated) +
tm_polygons("Cluster3", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
)
palette <-colorRampPalette(c("white", mypaletTESS[3]))
population_4_aggregated = municipalities %>%
st_join(point_data[,c('Cluster4','geometry')]) %>%
group_by(id) %>%
summarize(Cluster4 = mean(Cluster4, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_4_aggregated) +
tm_polygons("Cluster4", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
) +
tm_layout(frame = F, main.title = "Admixture proportions",legend.outside = T)
palette <-colorRampPalette(c("white", mypaletTESS[2]))
population_5_aggregated = municipalities %>%
st_join(point_data[,c('Cluster5','geometry')]) %>%
group_by(id) %>%
summarize(Cluster5 = mean(Cluster5, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_5_aggregated) +
tm_polygons("Cluster5", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
) +
tm_layout(frame = F, main.title = "Admixture proportions",legend.outside = T)
palette <-colorRampPalette(c("white", mypaletTESS[1]))
population_6_aggregated = municipalities %>%
st_join(point_data[,c('Cluster6','geometry')]) %>%
group_by(id) %>%
summarize(Cluster6 = mean(Cluster6, na.rm = TRUE))
tmap_mode("view")
tm_shape(population_6_aggregated) +
tm_polygons("Cluster6", palette = palette(15), breaks = c(0, 0.1, 0.2,0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
) +
tm_layout(frame = F, main.title = "Admixture proportions",legend.outside = T)