I would like to assign each Thiessen polygon the same color as the point used to generate the tessellation. We can use the meuse dataset.
library(sf) # 'simple features' representations of spatial objects
#- read
data("meuse", package = "sp")
#- to sf
meuse.sf <- st_as_sf(meuse, coords = c("x","y"))
#- crs
st_crs(meuse.sf) <- 28992
#- Voronoi tesselation
pnts <- st_union(meuse.sf)
voronoi_grid <- st_voronoi(pnts)
#-- plot
plot(voronoi_grid, col = NA, #meuse.sf[,"zinc"],
xlim=c(178605,181390),
ylim=c(329714,333611))
points(st_coordinates(meuse.sf)[,1], st_coordinates(meuse.sf)[,2],
pch=21,
bg=sp::bpy.colors(length(meuse.sf$zinc))[rank(meuse.sf$zinc)],
cex=0.4*meuse.sf$zinc/max(meuse.sf$zinc))
#grid()
title("Tesselated Voronoi Surface")
How do I transfer the meuse.sf['zinc'] values to the Voronoi and visualize the polygons colored like the points please?

You can extract polygons from the
GEOMETRYCOLLECTIONthat's returned byst_voronoi(), convert the resulting set to ansfobject and spatially join it to (a subset of)meuse.sf:Created on 2023-09-05 with reprex v2.0.2