The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

pavdata is an R
package for storing, validating, and exploring transportation
infrastructure data with a lightweight, human-readable
.pavdata format based on JSON.
It is designed for pavement and materials workflows where researchers need to:
print(), summary(), and
plot()Install from a local source tree:
install.packages("path/to/pavdata", repos = NULL, type = "source")After its first release on CRAN, install it with:
install.packages("pavdata")Laboratory and field datasets in pavement engineering are often
fragmented across spreadsheets, scripts, and reports.
pavdata provides a small relational layer in R so those
records can be created, checked, saved, and reused more
consistently.
The package focuses on four practical ideas aligned with the FAIR Principles:
.pavdata
filesCreate a few linked objects:
library(pavdata)
binder <- pav_new(
"binder",
id = "binder-cap-50-70",
name = "CAP 50/70",
binder_type = "CAP 50/70",
penetration_mm = 52,
softening_point_c = 49
)
aggregate <- pav_new(
"aggregate",
id = "aggregate-basalt",
name = "Basalt aggregate",
bulk_specific_gravity = 2.71,
water_absorption_pct = 1.2
)
mixture <- pav_new(
"mixture",
id = "mixture-dense-graded",
name = "Dense graded mix",
binder_id = binder$id,
aggregate_id = aggregate$id,
binder_content_pct = 5.3
)
volumetrics <- pav_new(
"mixture_test",
id = "test-volumetrics-dense-graded",
name = "Dense graded mix volumetrics",
mixture_id = mixture$id,
test_type = "volumetrics",
volumetrics = list(
air_voids_pct = 4.1,
voids_mineral_aggregate_pct = 15.4,
voids_filled_asphalt_pct = 73.4,
filler_binder_ratio = 1.1
)
)Validate the objects:
pav_check(binder)
pav_check(mixture)
pav_check(volumetrics)Save them to disk and read them back:
path <- tempfile(fileext = ".pavdata")
pav_write(list(binder, aggregate, mixture, volumetrics), path)
objects <- pav_read(path)
names(objects)Load them into a library for indexed access:
lib <- pav_library()
pav_library_load(lib, path)
print(lib)
pav_list(lib, type = "mixture")
pav_view(lib, mixture$id)PavData objects support standard S3 methods.
print()Use print() for a compact object overview:
print(binder)<pavdata_binder> CAP 50/70
id: binder-cap-50-70 | v1 | 13 fields
summary()Use summary() to display the populated metadata and data
fields:
summary(volumetrics)MIXTURE_TEST: Dense graded mix volumetrics
ID: test-volumetrics-dense-graded | v1 | Created: <timestamp>
Source:
mixture_id mixture-dense-graded
test_type volumetrics
volumetrics
air_voids_pct 4.1
voids_mineral_aggregate_pct 15.4
voids_filled_asphalt_pct 73.4
filler_binder_ratio 1.1
plot()Use plot() to compare numeric fields. Short labels can
be passed to the underlying base-R bar plot with
names.arg:
plot(
volumetrics,
names.arg = c("Air voids (%)", "VMA (%)", "VFA (%)", "Filler/binder"),
ylim = c(0, 80)
)
| Function | Purpose |
|---|---|
pav_new() |
Create a new PavData object |
pav_check() |
Validate one object |
pav_check_integrity() |
Validate a collection and its foreign keys |
pav_write() |
Write objects to a .pavdata file |
pav_read() |
Read objects from a .pavdata file |
pav_load() |
Read a file and validate all objects |
pav_library() |
Create an in-memory indexed library |
pav_library_load() |
Load a file into a library |
pav_list() |
List objects in a library |
pav_view() |
Display one object from a library |
pavdata currently supports these object families:
samplebinderaggregatemixturebinder_testaggregate_testmixture_testreferenceEach object shares common metadata such as id,
name, type, version,
created_at, source, and
notes.
The UML diagram below summarizes the S3 classes and their relationships.
The package ships with an example .pavdata file:
path <- pavdata_sample_path()
pathYou can use it to test import, browsing, and validation workflows.
PavData is developed by:
Creator
Authors
Contributors
Affiliation
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.