Title: | Visualisation, Exploration, and Web Communication of Archaeological Spatial Data |
---|---|
Description: | An R 'Shiny' application for visual and statistical exploration and web communication of archaeological spatial data, either remains or sites. It offers interactive 3D and 2D visualisations (cross sections and maps of remains, timeline of the work made in a site) which can be exported in SVG and HTML formats. It performs simple spatial statistics (convex hull, regression surfaces, 2D kernel density estimation) and allows exporting data to other online applications for more complex methods. 'archeoViz' can be used offline locally or deployed on a server, either with interactive input of data or with a static data set. Example is provided at <https://analytics.huma-num.fr/archeoviz/en>. |
Authors: | Sebastien Plutniak [aut, cre] , Renata Araujo [ctb] , Laura Coltofean [ctb] , Nicolas Delsol [ctb] , Sara Giardino [ctb] , Julian Laabs [ctb] |
Maintainer: | Sebastien Plutniak <[email protected]> |
License: | GPL-3 |
Version: | 1.3.5 |
Built: | 2024-12-19 23:26:52 UTC |
Source: | https://github.com/sebastien-plutniak/archeoviz |
Launch the archeoViz application for visual and statistical exploration of spatial archaeological data
archeoViz(objects.df=NULL, refits.df=NULL, timeline.df=NULL, title=NULL, home.text=NULL, lang="en", set.theme="cosmo", square.size = 100, unit = "cm", rotation = 0, grid.orientation = NULL, background.map = NULL, reverse.axis.values = NULL, reverse.square.names = NULL, add.x.square.labels = NULL, add.y.square.labels = NULL, class.variable = NULL, class.values = NULL, default.group = "by.layer", location.mode = NULL, map.z.val = NULL, map.density = "no", map.refits = NULL, plot3d.ratio = 1, plot3d.hulls = FALSE, hulls.class.values = NULL, plot3d.surfaces = NULL, plot3d.refits = NULL, point.size = 2, sectionX.x.val = NULL, sectionX.y.val = NULL, sectionX.refits = NULL, sectionY.x.val = NULL, sectionY.y.val = NULL, sectionY.refits = NULL, camera.center = c(0, 0, 0), camera.eye = c(1.25, 1.25, 1.25), run.plots = FALSE, html.export = TRUE, table.export = TRUE )
archeoViz(objects.df=NULL, refits.df=NULL, timeline.df=NULL, title=NULL, home.text=NULL, lang="en", set.theme="cosmo", square.size = 100, unit = "cm", rotation = 0, grid.orientation = NULL, background.map = NULL, reverse.axis.values = NULL, reverse.square.names = NULL, add.x.square.labels = NULL, add.y.square.labels = NULL, class.variable = NULL, class.values = NULL, default.group = "by.layer", location.mode = NULL, map.z.val = NULL, map.density = "no", map.refits = NULL, plot3d.ratio = 1, plot3d.hulls = FALSE, hulls.class.values = NULL, plot3d.surfaces = NULL, plot3d.refits = NULL, point.size = 2, sectionX.x.val = NULL, sectionX.y.val = NULL, sectionX.refits = NULL, sectionY.x.val = NULL, sectionY.y.val = NULL, sectionY.refits = NULL, camera.center = c(0, 0, 0), camera.eye = c(1.25, 1.25, 1.25), run.plots = FALSE, html.export = TRUE, table.export = TRUE )
objects.df |
data frame, with data documenting the location and type of archaeological remains. |
refits.df |
data frame, with two columns containin the ids of refitting objects. |
timeline.df |
data frame, with data documenting the year of excavation of the site's squares. |
title |
character. Title to display on the application. |
home.text |
character. HTML contents to display on the home page of the application. |
lang |
character. Language of the interface, one of 'de' (German), 'en' (English), 'es' (Spanish), 'fr' (French), 'it' (Italian), 'pt' (Portuguese), 'ro' (Romanian). |
set.theme |
character. Name of the shinytheme to use. |
square.size |
integer. Size (width and height) in centimeter of the squares in the grid system. Default value is 100 cm. |
rotation |
integer. Value (degrees) for the in-plane rotation of the point cloud. |
grid.orientation |
numerical. Orientation (degrees, positive or negative) of the grid (0 corresponds to a north orientation). |
unit |
character. Unit for spatial distances. One of 'cm', 'm', 'km'. |
background.map |
data frame or matrix. Coordinates to draw background lines in 3D and Map plots. |
reverse.axis.values |
character. Name of the axis or axes to be reversed (any combination of 'x', 'y', 'z'). |
reverse.square.names |
character. Name of the axis or axes for which to reverse the order of the square labels (any combination of 'x', 'y', 'z'). |
add.x.square.labels |
character. Additional square labels for the 'x' axis. |
add.y.square.labels |
character. Additional square labels for the 'y' axis. |
class.variable |
character. At the launch of the app, name of the variable to preselect. |
class.values |
character. At the launch of the app, names of the values to preselect. |
default.group |
character. At the launch of the app, preselection of the variable used to group data (one of 'by.layer' or 'by.variable'). |
location.mode |
character. At the launch of the app, preselection of the location methods (any combination of 'exact', 'fuzzy', 'show.uncertainty'). |
map.z.val |
double. Minimal and maximal Z depth coordinates values to display in the map plot, e.g. c(0, 30). |
map.density |
character. At the launch of the app, whether to compute and show density contours in the map plot (one of 'no', 'overall', 'by.variable'). |
map.refits |
logical. Whether to show refits in the map plot. |
plot3d.ratio |
double. At the launch of the app, ratio of the vertical axis in the 3D plot. |
plot3d.hulls |
logical. At the launch of the app, whether to compute and show convex hulls in the 3D plot. |
hulls.class.values |
character. At the launch of the app, names of the points subsets for which to compute convex hulls. |
plot3d.surfaces |
logical. At the launch of the app, whether to compute and show regression in the 3D plot. |
plot3d.refits |
logical. At the launch of the app, whether to show refits on the 3D section plot. |
point.size |
integer. At the launch of the app, size of the points in the plots. |
sectionX.x.val |
double. At the launch of the app, minimal and maximal X coordinates values to display in the X section plot, e.g. c(10, 20). |
sectionX.y.val |
double. At the launch of the app, minimal and maximal Y coordinates values to display in the X section plot, e.g. c(10, 20). |
sectionX.refits |
logical. At the launch of the app, whether to show refits in the X section plot. |
sectionY.x.val |
double. At the launch of the app, minimal and maximal X coordinates values to display in the Y section plot, e.g. c(10, 20). |
sectionY.y.val |
double. At the launch of the app, minimal and maximal Y coordinates values to display in the Y section plot, e.g. c(10, 20). |
sectionY.refits |
logical. At the launch of the app, whether to show refits in the Y section plot. |
camera.center |
double. In 3D plot, x,y,z coordinates of the point to which the camera is oriented, to pass to the 'plotly::layout()' function. Default value: c(x=0, y=0, z=0). |
camera.eye |
double. In 3D plot, x,y,z coordinates of the camera's view point, to pass to the 'plotly::layout()' function. Default value: c(x=1.25, y=1.25, z=1.25). |
run.plots |
logical. Whether to immediately compute and show plots (without requiring the user to click on the buttons in the interface). |
html.export |
logical. Whether or not to allow figures to be exported as HTML widgets. |
table.export |
logical. Allow or disallow data transfer to third-party applications. |
This function launches the 'archeoViz' application. It can be used without parameter, allowing the user to input data through the "Input data" tab. Alternatively, the 'objects.df' parameter, and the optional 'refits.df' and 'timeline.df' parameters, can be used to input data.frames about the archaeological objects, the refitting relationships between these objects, and the chronology of the excavation, respectively.
The aspect of the application can be modified using the 'title', 'home.text', and 'set.theme' parameters. Possible values for the 'set.theme' parameter includes the allowed values for the 'shinytheme()' function (i.e., "cerulean", "cosmo", "cyborg", "darkly", "flatly", "journal", "lumen", "paper", "readable", "sandstone", "simplex", "slate", "spacelab", "superhero", "united", "yeti").
Note that the 'SEAHORS' package includes interactive features to format a dataset in 'archeoViz' format, export it or send it to an online 'archeoViz' instance.
Launch the 'archeoViz' Shiny application.
Sebastien Plutniak <sebastien.plutniak at posteo.net>
shiny
shinytheme
plotly
layout
ggplot2
gam
cxhull
hullMesh
SEAHORS
## Not run: # running the app with no particular data and settings: archeoViz() # running the app with a particular data set: objects <- demo_objects_data(1000) refits <- demo_refits_data(1000) archeoViz(objects.df=objects, refits.df=refits, title="My data set") ## End(Not run)
## Not run: # running the app with no particular data and settings: archeoViz() # running the app with a particular data set: objects <- demo_objects_data(1000) refits <- demo_refits_data(1000) archeoViz(objects.df=objects, refits.df=refits, title="My data set") ## End(Not run)
A convenient function to generate a data set to be used for the objects.df
parameter of the archeoViz
function.
demo_objects_data(n.objects)
demo_objects_data(n.objects)
n.objects |
numerical, number of objects to include in the data set. |
A data.frame with 12 columns ("id", "square_x", "square_y", "xmin", "xmax", "ymin", "ymax", "zmin", "zmax", "layer", "object_type", "object_class_size").
Sebastien Plutniak <sebastien.plutniak at posteo.net>
## Not run: demo_objects_data(n.objects.df=100)
## Not run: demo_objects_data(n.objects.df=100)
A convenient function to generate a data set to be used for the refits.df
parameter of the archeoViz
function.
demo_refits_data(n.objects)
demo_refits_data(n.objects)
n.objects |
numerical, number of objects between which refitting relationships must be created. |
A matrix with 2 columns containing random pairs of numerica values (corresponding to the unique identifiers of the objects generated with the demo_objects_data
function).
Sebastien Plutniak <sebastien.plutniak at posteo.net>
## Not run: demo_refits_data(n.objects.df=100)
## Not run: demo_refits_data(n.objects.df=100)
A convenient function to generate a data set to be used for the timeline.df
parameter of the archeoViz
function.
demo_timeline_data()
demo_timeline_data()
Note that there is no correspondance between the data generated with demo_timeline_data
and the data generated with demo_objects_data
and demo_refits_data
.
A data frame with 3 columns containing random data ("year", "square_x", "square_y").
Sebastien Plutniak <sebastien.plutniak at posteo.net>
## Not run: demo_timeline_data()
## Not run: demo_timeline_data()