Last updated: 2024-04-12
Checks: 7 0
Knit directory:
bgc_argo_r_argodata/analysis/
This reproducible R Markdown analysis was created with workflowr (version 1.7.0). The Checks tab describes the reproducibility checks that were applied when the results were created. The Past versions tab lists the development history.
Great! Since the R Markdown file has been committed to the Git repository, you know the exact version of the code that produced these results.
Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.
The command set.seed(20211008)
was run prior to running
the code in the R Markdown file. Setting a seed ensures that any results
that rely on randomness, e.g. subsampling or permutations, are
reproducible.
Great job! Recording the operating system, R version, and package versions is critical for reproducibility.
Nice! There were no cached chunks for this analysis, so you can be confident that you successfully produced the results during this run.
Great job! Using relative paths to the files within your workflowr project makes it easier to run your code on other machines.
Great! You are using Git for version control. Tracking code development and connecting the code version to the results is critical for reproducibility.
The results in this page were generated with repository version f81959a. See the Past versions tab to see a history of the changes made to the R Markdown and HTML files.
Note that you need to be careful to ensure that all relevant files for
the analysis have been committed to Git prior to generating the results
(you can use wflow_publish
or
wflow_git_commit
). workflowr only checks the R Markdown
file, but you know if there are other scripts or data files that it
depends on. Below is the status of the Git repository when the results
were generated:
Ignored files:
Ignored: .Rproj.user/
Unstaged changes:
Modified: analysis/MHWs_categorisation.Rmd
Modified: analysis/_site.yml
Modified: analysis/load_broullon_DIC_TA_clim.Rmd
Modified: code/Workflowr_project_managment.R
Modified: code/start_background_job.R
Modified: code/start_background_job_load.R
Modified: code/start_background_job_partial.R
Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.
These are the previous versions of the repository in which changes were
made to the R Markdown (analysis/coverage_maps.Rmd
) and
HTML (docs/coverage_maps.html
) files. If you’ve configured
a remote Git repository (see ?wflow_git_remote
), click on
the hyperlinks in the table below to view the files as they were in that
past version.
File | Version | Author | Date | Message |
---|---|---|---|---|
html | c076fba | mlarriere | 2024-04-12 | Build site. |
html | 91f08a6 | mlarriere | 2024-04-07 | Build site. |
html | db21f55 | mlarriere | 2024-04-06 | Build site. |
html | 324e64f | mlarriere | 2024-04-01 | Build site. |
Rmd | bad6cd3 | mlarriere | 2024-04-01 | coverage_maps building test |
html | 713ff67 | mlarriere | 2024-04-01 | Build site. |
html | f9de50e | ds2n19 | 2024-01-01 | Build site. |
html | 07d4eb8 | ds2n19 | 2023-12-20 | Build site. |
html | fa6cf38 | ds2n19 | 2023-12-14 | Build site. |
Rmd | 64fd104 | ds2n19 | 2023-12-14 | revised coverage analysis and SO focused cluster analysis. |
html | f110b74 | ds2n19 | 2023-12-13 | Build site. |
Rmd | acb6523 | ds2n19 | 2023-12-12 | Added documentation added to tasks section at start of each script. |
html | e62fb2c | ds2n19 | 2023-12-11 | Build site. |
html | 2d8fb44 | ds2n19 | 2023-12-07 | Build site. |
Rmd | 89075e8 | ds2n19 | 2023-12-07 | Changes to coverage maps |
html | 9d9224a | ds2n19 | 2023-12-07 | Build site. |
Rmd | 6ec79f9 | ds2n19 | 2023-12-07 | Revised coverage analysis. |
html | e60ebd2 | ds2n19 | 2023-12-07 | Build site. |
html | 80c16c2 | ds2n19 | 2023-11-15 | Build site. |
html | 93b4545 | ds2n19 | 2023-10-18 | Build site. |
html | c16000b | ds2n19 | 2023-10-12 | Build site. |
html | 770b125 | ds2n19 | 2023-10-11 | Build site. |
html | 13ae27f | ds2n19 | 2023-10-09 | Build site. |
Rmd | fc05391 | ds2n19 | 2023-10-09 | Changed core Argo location folders and run for 2013, 2014 and 2022 |
html | 1e972c5 | ds2n19 | 2023-10-02 | Build site. |
html | 6377b31 | ds2n19 | 2023-10-02 | Build site. |
html | 7b3d8c5 | pasqualina-vonlanthendinenna | 2022-08-29 | Build site. |
Rmd | 8e81570 | pasqualina-vonlanthendinenna | 2022-08-29 | load and add in core-argo data (1 month) |
html | bdd516d | pasqualina-vonlanthendinenna | 2022-05-23 | Build site. |
html | 4173c20 | jens-daniel-mueller | 2022-05-12 | Build site. |
html | dfe89d7 | jens-daniel-mueller | 2022-05-12 | Build site. |
html | 710edd4 | jens-daniel-mueller | 2022-05-11 | Build site. |
html | 68eff8b | jens-daniel-mueller | 2022-05-11 | Build site. |
html | 6a6e874 | pasqualina-vonlanthendinenna | 2022-04-29 | Build site. |
html | 2d44f8a | pasqualina-vonlanthendinenna | 2022-04-29 | Build site. |
html | e61c08e | pasqualina-vonlanthendinenna | 2022-04-27 | Build site. |
html | 10036ed | pasqualina-vonlanthendinenna | 2022-04-26 | Build site. |
html | c03dd24 | pasqualina-vonlanthendinenna | 2022-04-20 | Build site. |
html | 8805f99 | pasqualina-vonlanthendinenna | 2022-04-11 | Build site. |
html | 905d82f | pasqualina-vonlanthendinenna | 2022-02-15 | Build site. |
html | b8a6482 | pasqualina-vonlanthendinenna | 2022-01-03 | Build site. |
html | 7f3cfe7 | pasqualina-vonlanthendinenna | 2021-12-17 | Build site. |
Rmd | c4cce1a | pasqualina-vonlanthendinenna | 2021-12-17 | updated cache data |
html | 123e5db | pasqualina-vonlanthendinenna | 2021-12-07 | Build site. |
Rmd | f8abe59 | pasqualina-vonlanthendinenna | 2021-12-07 | suppressed output messages and updated plots |
html | 930ea26 | pasqualina-vonlanthendinenna | 2021-11-26 | Build site. |
html | e09c60b | pasqualina-vonlanthendinenna | 2021-11-26 | Build site. |
html | 1305d6b | pasqualina-vonlanthendinenna | 2021-11-26 | Build site. |
html | 5e2b8a5 | pasqualina-vonlanthendinenna | 2021-11-26 | Build site. |
html | 3df4daf | pasqualina-vonlanthendinenna | 2021-11-26 | Build site. |
html | 7a01367 | pasqualina-vonlanthendinenna | 2021-11-12 | Build site. |
html | 284003d | pasqualina-vonlanthendinenna | 2021-11-11 | Build site. |
html | 6276d6c | pasqualina-vonlanthendinenna | 2021-11-11 | Build site. |
html | a103f60 | pasqualina-vonlanthendinenna | 2021-11-05 | Build site. |
Rmd | 31576f9 | pasqualina-vonlanthendinenna | 2021-11-05 | changed QC flag maps |
html | fbd5bac | pasqualina-vonlanthendinenna | 2021-11-04 | Build site. |
html | 68977a1 | pasqualina-vonlanthendinenna | 2021-10-26 | Build site. |
Rmd | 062b272 | pasqualina-vonlanthendinenna | 2021-10-26 | added ggsave |
html | b57291a | pasqualina-vonlanthendinenna | 2021-10-26 | Build site. |
html | bba33bf | pasqualina-vonlanthendinenna | 2021-10-26 | Build site. |
Rmd | 4bc1859 | pasqualina-vonlanthendinenna | 2021-10-26 | run with full data |
html | f7ef44f | jens-daniel-mueller | 2021-10-22 | Build site. |
Rmd | ee2b3f3 | jens-daniel-mueller | 2021-10-22 | code revision |
html | aa7280d | jens-daniel-mueller | 2021-10-22 | Build site. |
Rmd | ca7ba6b | jens-daniel-mueller | 2021-10-22 | adding revised code |
html | d84c904 | pasqualina-vonlanthendinenna | 2021-10-22 | Build site. |
html | 8ecdb43 | pasqualina-vonlanthendinenna | 2021-10-22 | Build site. |
html | c81f21c | pasqualina-vonlanthendinenna | 2021-10-21 | Build site. |
html | 62d8519 | pasqualina-vonlanthendinenna | 2021-10-20 | Build site. |
html | b8feac2 | pasqualina-vonlanthendinenna | 2021-10-20 | Build site. |
html | 701fffa | pasqualina-vonlanthendinenna | 2021-10-20 | Build site. |
Rmd | b88a839 | pasqualina-vonlanthendinenna | 2021-10-20 | adding revised code |
Map the location of temperature, oxygen, pH, and nitrate observations recorded by core and BGC-Argo floats Categories include core temperature, BGC temperature, ph, disolved oxyge, nitrate, chlorophyll a.
Counts are profiles by profile_range. The profiles have already been check to ensure they only contain good measurements and that the profiles do not contain significant gaps.
temp_core_va.rds - core preprocessed folder created by temp_core_align_climatology.Rmd
temp_bgc_va.rds - bgc preprocessed folder created by temp_align_climatology.Rmd
pH_bgc_va.rds - bgc preprocessed folder created by pH_align_climatology.Rmd
doxy_bgc_va.rds - bgc preprocessed folder created by doxy_vertical_align.Rmd
nitrate_bgc_va.rds - bgc preprocessed folder created by nitrate_vertical_align.Rmd
chla_bgc_va.rds - bgc preprocessed folder created by chla_vertical_align.Rmd
Read the files created in loading_data.html:
bgc_temp <- read_rds(file = paste0(path_argo_preprocessed, "/temp_bgc_va.rds")) %>%
filter(!is.na(year))
bgc_ph <- read_rds(file = paste0(path_argo_preprocessed, "/pH_bgc_va.rds")) %>%
filter(!is.na(year))
bgc_doxy <- read_rds(file = paste0(path_argo_preprocessed, "/doxy_bgc_va.rds")) %>%
filter(!is.na(year))
bgc_nitrate <- read_rds(file = paste0(path_argo_preprocessed, "/nitrate_bgc_va.rds")) %>%
filter(!is.na(year))
bgc_chla <- read_rds(file = paste0(path_argo_preprocessed, "/chla_bgc_va.rds")) %>%
filter(!is.na(year))
core_temp <- read_rds(file = paste0(path_argo_core_preprocessed, "/temp_core_va.rds")) %>%
filter(!is.na(year))
basinmask <-
read_csv(paste(path_emlr_utilities,
"basin_mask_WOA18.csv",
sep = ""),
col_types = cols("MLR_basins" = col_character()))
basinmask <- basinmask %>%
filter(MLR_basins == unique(basinmask$MLR_basins)[1]) %>%
select(lon, lat, basin_AIP)
map <-
read_rds(paste(path_emlr_utilities,
"map_landmask_WOA18.rds",
sep = ""))
# Number of measurements
core_count <- core_temp %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
core_count <- core_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# core_count %>%
# group_by (year, lat, lon) %>%
# summarise(n = n()) %>%
# filter (n == 1)
#
# core_count <- rbind(
# core_count %>%
# filter (year == 2013, lat == -59.5, lon == 141.5),
# core_count %>%
# filter (year == 2013, lat == -63.5, lon == 149.5),
# core_count %>%
# filter (year == 2013, lat == -68.5, lon == 233.5))
# Aggregate profile range
core_count_agg <- core_count %>%
group_by(year, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
mutate(profile_range = 1) %>%
ungroup()
core_count_agg <- rbind(
core_count_agg,
core_count %>%
filter (profile_range %in% c(2, 3)) %>%
group_by(year, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
mutate(profile_range = 2) %>%
ungroup()
)
core_count_agg <- rbind(
core_count_agg,
core_count %>%
filter (profile_range == 3)
)
# measurement type
core_count_agg <- core_count_agg %>%
mutate (prof_type = 'temperature')
# map the location of profiles for each profile in each year
core_count_agg %>%
group_split(profile_range) %>%
map(
~ map +
geom_tile(data = .x, aes(
x = lon, y = lat, fill = count_profiles
)) +
scale_fill_gradient(low = "blue", high = "red",
trans = "log10") +
labs(
x = 'lon',
y = 'lat',
fill = 'number of\nprofiles',
title = paste0('Core temperature by year and location ',
ifelse(unique(.x$profile_range) == 1, '600m', ifelse(unique(.x$profile_range) == 2, '1200m', '1500m')),
' profiles')
) +
theme(
legend.position = "bottom",
axis.text = element_blank(),
axis.ticks = element_blank()
) +
facet_wrap(~year, ncol = 3)
)
[[1]]
[[2]]
Version | Author | Date |
---|---|---|
324e64f | mlarriere | 2024-04-01 |
713ff67 | mlarriere | 2024-04-01 |
f9de50e | ds2n19 | 2024-01-01 |
f110b74 | ds2n19 | 2023-12-13 |
2d8fb44 | ds2n19 | 2023-12-07 |
9d9224a | ds2n19 | 2023-12-07 |
770b125 | ds2n19 | 2023-10-11 |
13ae27f | ds2n19 | 2023-10-09 |
6377b31 | ds2n19 | 2023-10-02 |
7b3d8c5 | pasqualina-vonlanthendinenna | 2022-08-29 |
[[3]]
# sum across years
core_count_agg <- core_count_agg %>%
group_by(profile_range, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
ungroup()
# map the location of profiles for each profile in each year
core_count_agg %>%
group_split(profile_range) %>%
map(
~ map +
geom_tile(data = .x, aes(
x = lon, y = lat, fill = count_profiles
)) +
scale_fill_gradient(low = "blue", high = "red",
trans = "log10") +
labs(
x = 'lon',
y = 'lat',
fill = 'number of\nprofiles',
title = paste0('Core temperature by location ',
ifelse(unique(.x$profile_range) == 1, '600m', ifelse(unique(.x$profile_range) == 2, '1200m', '1500m')),
' profiles')
) +
theme(
legend.position = "bottom",
axis.text = element_blank(),
axis.ticks = element_blank()
)
)
[[1]]
[[2]]
[[3]]
# ----------------------------------------------------------------------------------------------
# temperature
# ----------------------------------------------------------------------------------------------
# Number of measurements
bgc_temp_count <- bgc_temp %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
bgc_temp_count <- bgc_temp_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# measurement type
bgc_temp_count <- bgc_temp_count %>%
mutate (prof_order = 1,
prof_type = 'temperature')
# ----------------------------------------------------------------------------------------------
# ph
# ----------------------------------------------------------------------------------------------
# Number of measurements
bgc_ph_count <- bgc_ph %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
bgc_ph_count <- bgc_ph_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# measurement type
bgc_ph_count <- bgc_ph_count %>%
mutate (prof_order = 2,
prof_type = 'pH')
# ----------------------------------------------------------------------------------------------
# doxy
# ----------------------------------------------------------------------------------------------
# Number of measurements
bgc_doxy_count <- bgc_doxy %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
bgc_doxy_count <- bgc_doxy_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# measurement type
bgc_doxy_count <- bgc_doxy_count %>%
mutate (prof_order = 3,
prof_type = 'dissolved oxygen')
# ----------------------------------------------------------------------------------------------
# nitrate
# ----------------------------------------------------------------------------------------------
# Number of measurements
bgc_nitrate_count <- bgc_nitrate %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
bgc_nitrate_count <- bgc_nitrate_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# measurement type
bgc_nitrate_count <- bgc_nitrate_count %>%
mutate (prof_order = 4,
prof_type = 'nitrate')
# ----------------------------------------------------------------------------------------------
# chla
# ----------------------------------------------------------------------------------------------
# Number of measurements
bgc_chla_count <- bgc_chla %>%
group_by(year, file_id, lat, lon, profile_range) %>%
summarise(count_measures = n()) %>%
ungroup()
# Number of profiles
bgc_chla_count <- bgc_chla_count %>%
group_by(year, lat, lon, profile_range) %>%
summarise(count_profiles = n()) %>%
ungroup()
# measurement type
bgc_chla_count <- bgc_chla_count %>%
mutate (prof_order = 5,
prof_type = 'chlorophyll a')
# combine
bgc_count <- rbind(bgc_temp_count, bgc_ph_count, bgc_doxy_count, bgc_nitrate_count, bgc_chla_count)
# Aggregate profile range
bgc_count_agg <- bgc_count %>%
group_by(prof_order, prof_type, year, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
mutate(profile_range = 1) %>%
ungroup()
bgc_count_agg <- rbind(
bgc_count_agg,
bgc_count %>%
filter (profile_range %in% c(2, 3)) %>%
group_by(prof_order, prof_type, year, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
mutate(profile_range = 2) %>%
ungroup()
)
bgc_count_agg <- rbind(
bgc_count_agg,
bgc_count %>%
filter (profile_range == 3)
)
# map the location of profiles for each profile in each year
bgc_count_agg %>%
group_split(prof_order, profile_range) %>%
map(
~ map +
geom_tile(data = .x, aes(
x = lon, y = lat, fill = count_profiles
)) +
scale_fill_gradient(low = "blue", high = "red",
trans = "log10") +
labs(
x = 'lon',
y = 'lat',
fill = 'number of\nprofiles',
title = paste0('BGC ',
unique(.x$prof_type),
' by year and location ',
ifelse(unique(.x$profile_range) == 1, '600/614m', ifelse(unique(.x$profile_range) == 2, '1200/1225m', '1500/1600m')),
' profiles')
) +
theme(
legend.position = "bottom",
axis.text = element_blank(),
axis.ticks = element_blank()
) +
facet_wrap(~year, ncol = 3)
)
[[1]]
[[2]]
[[3]]
[[4]]
[[5]]
[[6]]
[[7]]
[[8]]
[[9]]
[[10]]
[[11]]
[[12]]
[[13]]
[[14]]
# sum across years
bgc_count_agg <- bgc_count_agg %>%
group_by(prof_order, prof_type, profile_range, lat, lon) %>%
summarise(count_profiles = sum(count_profiles)) %>%
ungroup()
# map the location of profiles for each profile in each year
bgc_count_agg %>%
group_split(prof_order, profile_range) %>%
map(
~ map +
geom_tile(data = .x, aes(
x = lon, y = lat, fill = count_profiles
)) +
scale_fill_gradient(low = "blue", high = "red",
trans = "log10") +
labs(
x = 'lon',
y = 'lat',
fill = 'number of\nprofiles',
title = paste0('BGC ',
unique(.x$prof_type),
' by location ',
ifelse(unique(.x$profile_range) == 1, '600/614m', ifelse(unique(.x$profile_range) == 2, '1200/1225m', '1500/1600m')),
' profiles')
) +
theme(
legend.position = "bottom",
axis.text = element_blank(),
axis.ticks = element_blank()
)
)
[[1]]
[[2]]
[[3]]
[[4]]
[[5]]
[[6]]
[[7]]
[[8]]
[[9]]
[[10]]
[[11]]
[[12]]
[[13]]
[[14]]
sessionInfo()
R version 4.2.2 (2022-10-31)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: openSUSE Leap 15.5
Matrix products: default
BLAS: /usr/local/R-4.2.2/lib64/R/lib/libRblas.so
LAPACK: /usr/local/R-4.2.2/lib64/R/lib/libRlapack.so
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] lubridate_1.9.0 timechange_0.1.1 argodata_0.1.0 forcats_0.5.2
[5] stringr_1.5.0 dplyr_1.1.3 purrr_1.0.2 readr_2.1.3
[9] tidyr_1.3.0 tibble_3.2.1 ggplot2_3.4.4 tidyverse_1.3.2
[13] workflowr_1.7.0
loaded via a namespace (and not attached):
[1] httr_1.4.4 sass_0.4.4 bit64_4.0.5
[4] vroom_1.6.0 jsonlite_1.8.3 modelr_0.1.10
[7] bslib_0.4.1 assertthat_0.2.1 getPass_0.2-2
[10] highr_0.9 googlesheets4_1.0.1 cellranger_1.1.0
[13] yaml_2.3.6 pillar_1.9.0 backports_1.4.1
[16] glue_1.6.2 digest_0.6.30 promises_1.2.0.1
[19] rvest_1.0.3 colorspace_2.0-3 htmltools_0.5.8.1
[22] httpuv_1.6.6 pkgconfig_2.0.3 broom_1.0.5
[25] haven_2.5.1 scales_1.2.1 processx_3.8.0
[28] whisker_0.4 later_1.3.0 tzdb_0.3.0
[31] git2r_0.30.1 googledrive_2.0.0 generics_0.1.3
[34] farver_2.1.1 ellipsis_0.3.2 cachem_1.0.6
[37] withr_2.5.0 cli_3.6.1 magrittr_2.0.3
[40] crayon_1.5.2 readxl_1.4.1 evaluate_0.18
[43] ps_1.7.2 fs_1.5.2 fansi_1.0.3
[46] xml2_1.3.3 tools_4.2.2 hms_1.1.2
[49] gargle_1.2.1 lifecycle_1.0.3 munsell_0.5.0
[52] reprex_2.0.2 callr_3.7.3 compiler_4.2.2
[55] jquerylib_0.1.4 RNetCDF_2.6-1 rlang_1.1.1
[58] grid_4.2.2 rstudioapi_0.15.0 labeling_0.4.2
[61] rmarkdown_2.18 gtable_0.3.1 DBI_1.2.2
[64] R6_2.5.1 knitr_1.41 fastmap_1.1.0
[67] bit_4.0.5 utf8_1.2.2 rprojroot_2.0.3
[70] stringi_1.7.8 parallel_4.2.2 Rcpp_1.0.10
[73] vctrs_0.6.4 dbplyr_2.2.1 tidyselect_1.2.0
[76] xfun_0.35