CINXE.COM
How to submit your article
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang=""> <head> <meta charset="utf-8"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"/> <meta name="generator" content="distill" /> <style type="text/css"> /* Hide doc at startup (prevent jankiness while JS renders/transforms) */ body { visibility: hidden; } </style> <!--radix_placeholder_import_source--> <!--/radix_placeholder_import_source--> <style type="text/css">code{white-space: pre;}</style> <style type="text/css" data-origin="pandoc"> pre > code.sourceCode { white-space: pre; position: relative; } pre > code.sourceCode > span { line-height: 1.25; } pre > code.sourceCode > span:empty { height: 1.2em; } .sourceCode { overflow: visible; } code.sourceCode > span { color: inherit; text-decoration: inherit; } div.sourceCode { margin: 1em 0; } pre.sourceCode { margin: 0; } @media screen { div.sourceCode { overflow: auto; } } @media print { pre > code.sourceCode { white-space: pre-wrap; } pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; } } pre.numberSource code { counter-reset: source-line 0; } pre.numberSource code > span { position: relative; left: -4em; counter-increment: source-line; } pre.numberSource code > span > a:first-child::before { content: counter(source-line); position: relative; left: -1em; text-align: right; vertical-align: baseline; border: none; display: inline-block; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; padding: 0 4px; width: 4em; color: #aaaaaa; } pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; } div.sourceCode { color: #00769e; background-color: #f1f3f5; } @media screen { pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; } } code span { color: #00769e; } /* Normal */ code span.al { color: #ad0000; } /* Alert */ code span.an { color: #5e5e5e; } /* Annotation */ code span.at { color: #657422; } /* Attribute */ code span.bn { color: #ad0000; } /* BaseN */ code span.bu { } /* BuiltIn */ code span.cf { color: #00769e; } /* ControlFlow */ code span.ch { color: #20794d; } /* Char */ code span.cn { color: #8f5902; } /* Constant */ code span.co { color: #5e5e5e; } /* Comment */ code span.cv { color: #5e5e5e; font-style: italic; } /* CommentVar */ code span.do { color: #5e5e5e; font-style: italic; } /* Documentation */ code span.dt { color: #ad0000; } /* DataType */ code span.dv { color: #ad0000; } /* DecVal */ code span.er { color: #ad0000; } /* Error */ code span.ex { } /* Extension */ code span.fl { color: #ad0000; } /* Float */ code span.fu { color: #4758ab; } /* Function */ code span.im { } /* Import */ code span.in { color: #5e5e5e; } /* Information */ code span.kw { color: #00769e; } /* Keyword */ code span.op { color: #5e5e5e; } /* Operator */ code span.ot { color: #00769e; } /* Other */ code span.pp { color: #ad0000; } /* Preprocessor */ code span.sc { color: #5e5e5e; } /* SpecialChar */ code span.ss { color: #20794d; } /* SpecialString */ code span.st { color: #20794d; } /* String */ code span.va { color: #111111; } /* Variable */ code span.vs { color: #20794d; } /* VerbatimString */ code span.wa { color: #5e5e5e; font-style: italic; } /* Warning */ </style> <!--radix_placeholder_meta_tags--> <title>How to submit your article</title> <link rel="icon" type="image/vnd.microsoft.icon" href="resources/favicon.ico"/> <!-- https://developers.facebook.com/docs/sharing/webmasters#markup --> <meta property="og:title" content="How to submit your article"/> <meta property="og:type" content="article"/> <meta property="og:locale" content="en_US"/> <meta property="og:site_name" content="The R Journal"/> <!-- https://dev.twitter.com/cards/types/summary --> <meta property="twitter:card" content="summary"/> <meta property="twitter:title" content="How to submit your article"/> <!--/radix_placeholder_meta_tags--> <!--radix_placeholder_rmarkdown_metadata--> <script type="text/json" id="radix-rmarkdown-metadata"> {"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["title"]}},"value":[{"type":"character","attributes":{},"value":["How to submit your article"]}]} </script> <!--/radix_placeholder_rmarkdown_metadata--> <!--radix_placeholder_navigation_in_header--> <meta name="distill:offset" content=""/> <script type="application/javascript"> window.headroom_prevent_pin = false; window.document.addEventListener("DOMContentLoaded", function (event) { // initialize headroom for banner var header = $('header').get(0); var headerHeight = header.offsetHeight; var headroom = new Headroom(header, { tolerance: 5, onPin : function() { if (window.headroom_prevent_pin) { window.headroom_prevent_pin = false; headroom.unpin(); } } }); headroom.init(); if(window.location.hash) headroom.unpin(); $(header).addClass('headroom--transition'); // offset scroll location for banner on hash change // (see: https://github.com/WickyNilliams/headroom.js/issues/38) window.addEventListener("hashchange", function(event) { window.scrollTo(0, window.pageYOffset - (headerHeight + 25)); }); // responsive menu $('.distill-site-header').each(function(i, val) { var topnav = $(this); var toggle = topnav.find('.nav-toggle'); toggle.on('click', function() { topnav.toggleClass('responsive'); }); }); // nav dropdowns $('.nav-dropbtn').click(function(e) { $(this).next('.nav-dropdown-content').toggleClass('nav-dropdown-active'); $(this).parent().siblings('.nav-dropdown') .children('.nav-dropdown-content').removeClass('nav-dropdown-active'); }); $("body").click(function(e){ $('.nav-dropdown-content').removeClass('nav-dropdown-active'); }); $(".nav-dropdown").click(function(e){ e.stopPropagation(); }); }); </script> <style type="text/css"> /* Theme (user-documented overrideables for nav appearance) */ .distill-site-nav { color: rgba(255, 255, 255, 0.8); background-color: #0F2E3D; font-size: 15px; font-weight: 300; } .distill-site-nav a { color: inherit; text-decoration: none; } .distill-site-nav a:hover { color: white; } @media print { .distill-site-nav { display: none; } } .distill-site-header { } .distill-site-footer { } /* Site Header */ .distill-site-header { width: 100%; box-sizing: border-box; z-index: 3; } .distill-site-header .nav-left { display: inline-block; margin-left: 8px; } @media screen and (max-width: 768px) { .distill-site-header .nav-left { margin-left: 0; } } .distill-site-header .nav-right { float: right; margin-right: 8px; } .distill-site-header a, .distill-site-header .title { display: inline-block; text-align: center; padding: 14px 10px 14px 10px; } .distill-site-header .title { font-size: 18px; min-width: 150px; } .distill-site-header .logo { padding: 0; } .distill-site-header .logo img { display: none; max-height: 20px; width: auto; margin-bottom: -4px; } .distill-site-header .nav-image img { max-height: 18px; width: auto; display: inline-block; margin-bottom: -3px; } @media screen and (min-width: 1000px) { .distill-site-header .logo img { display: inline-block; } .distill-site-header .nav-left { margin-left: 20px; } .distill-site-header .nav-right { margin-right: 20px; } .distill-site-header .title { padding-left: 12px; } } .distill-site-header .nav-toggle { display: none; } .nav-dropdown { display: inline-block; position: relative; } .nav-dropdown .nav-dropbtn { border: none; outline: none; color: rgba(255, 255, 255, 0.8); padding: 16px 10px; background-color: transparent; font-family: inherit; font-size: inherit; font-weight: inherit; margin: 0; margin-top: 1px; z-index: 2; } .nav-dropdown-content { display: none; position: absolute; background-color: white; min-width: 200px; border: 1px solid rgba(0,0,0,0.15); border-radius: 4px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.1); z-index: 1; margin-top: 2px; white-space: nowrap; padding-top: 4px; padding-bottom: 4px; } .nav-dropdown-content hr { margin-top: 4px; margin-bottom: 4px; border: none; border-bottom: 1px solid rgba(0, 0, 0, 0.1); } .nav-dropdown-active { display: block; } .nav-dropdown-content a, .nav-dropdown-content .nav-dropdown-header { color: black; padding: 6px 24px; text-decoration: none; display: block; text-align: left; } .nav-dropdown-content .nav-dropdown-header { display: block; padding: 5px 24px; padding-bottom: 0; text-transform: uppercase; font-size: 14px; color: #999999; white-space: nowrap; } .nav-dropdown:hover .nav-dropbtn { color: white; } .nav-dropdown-content a:hover { background-color: #ddd; color: black; } .nav-right .nav-dropdown-content { margin-left: -45%; right: 0; } @media screen and (max-width: 768px) { .distill-site-header a, .distill-site-header .nav-dropdown {display: none;} .distill-site-header a.nav-toggle { float: right; display: block; } .distill-site-header .title { margin-left: 0; } .distill-site-header .nav-right { margin-right: 0; } .distill-site-header { overflow: hidden; } .nav-right .nav-dropdown-content { margin-left: 0; } } @media screen and (max-width: 768px) { .distill-site-header.responsive {position: relative; min-height: 500px; } .distill-site-header.responsive a.nav-toggle { position: absolute; right: 0; top: 0; } .distill-site-header.responsive a, .distill-site-header.responsive .nav-dropdown { display: block; text-align: left; } .distill-site-header.responsive .nav-left, .distill-site-header.responsive .nav-right { width: 100%; } .distill-site-header.responsive .nav-dropdown {float: none;} .distill-site-header.responsive .nav-dropdown-content {position: relative;} .distill-site-header.responsive .nav-dropdown .nav-dropbtn { display: block; width: 100%; text-align: left; } } /* Site Footer */ .distill-site-footer { width: 100%; overflow: hidden; box-sizing: border-box; z-index: 3; margin-top: 30px; padding-top: 30px; padding-bottom: 30px; text-align: center; } /* Headroom */ d-title { padding-top: 6rem; } @media print { d-title { padding-top: 4rem; } } .headroom { z-index: 1000; position: fixed; top: 0; left: 0; right: 0; } .headroom--transition { transition: all .4s ease-in-out; } .headroom--unpinned { top: -100px; } .headroom--pinned { top: 0; } /* adjust viewport for navbar height */ /* helps vertically center bootstrap (non-distill) content */ .min-vh-100 { min-height: calc(100vh - 100px) !important; } </style> <script src="site_libs/jquery-3.6.0/jquery-3.6.0.min.js"></script> <link href="site_libs/font-awesome-6.4.2/css/all.min.css" rel="stylesheet"/> <link href="site_libs/font-awesome-6.4.2/css/v4-shims.min.css" rel="stylesheet"/> <script src="site_libs/headroom-0.9.4/headroom.min.js"></script> <!--/radix_placeholder_navigation_in_header--> <!--radix_placeholder_distill--> <style type="text/css"> body { background-color: white; } .pandoc-table { width: 100%; } .pandoc-table>caption { margin-bottom: 10px; } .pandoc-table th:not([align]) { text-align: left; } .pagedtable-footer { font-size: 15px; } d-byline .byline { grid-template-columns: 2fr 2fr; } d-byline .byline h3 { margin-block-start: 1.5em; } d-byline .byline .authors-affiliations h3 { margin-block-start: 0.5em; } .authors-affiliations .orcid-id { width: 16px; height:16px; margin-left: 4px; margin-right: 4px; vertical-align: middle; padding-bottom: 2px; } d-title .dt-tags { margin-top: 1em; grid-column: text; } .dt-tags .dt-tag { text-decoration: none; display: inline-block; color: rgba(0,0,0,0.6); padding: 0em 0.4em; margin-right: 0.5em; margin-bottom: 0.4em; font-size: 70%; border: 1px solid rgba(0,0,0,0.2); border-radius: 3px; text-transform: uppercase; font-weight: 500; } d-article table.gt_table td, d-article table.gt_table th { border-bottom: none; font-size: 100%; } .html-widget { margin-bottom: 2.0em; } .l-screen-inset { padding-right: 16px; } .l-screen .caption { margin-left: 10px; } .shaded { background: rgb(247, 247, 247); padding-top: 20px; padding-bottom: 20px; border-top: 1px solid rgba(0, 0, 0, 0.1); border-bottom: 1px solid rgba(0, 0, 0, 0.1); } .shaded .html-widget { margin-bottom: 0; border: 1px solid rgba(0, 0, 0, 0.1); } .shaded .shaded-content { background: white; } .text-output { margin-top: 0; line-height: 1.5em; } .hidden { display: none !important; } hr.section-separator { border: none; border-top: 1px solid rgba(0, 0, 0, 0.1); margin: 0px; } d-byline { border-top: none; } d-article { padding-top: 2.5rem; padding-bottom: 30px; border-top: none; } d-appendix { padding-top: 30px; } d-article>p>img { width: 100%; } d-article h2 { margin: 1rem 0 1.5rem 0; } d-article h3 { margin-top: 1.5rem; } d-article iframe { border: 1px solid rgba(0, 0, 0, 0.1); margin-bottom: 2.0em; width: 100%; } /* Tweak code blocks */ d-article div.sourceCode code, d-article pre code { font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; } d-article pre, d-article div.sourceCode, d-article div.sourceCode pre { overflow: auto; } d-article div.sourceCode { background-color: white; } d-article div.sourceCode pre { padding-left: 10px; font-size: 12px; border-left: 2px solid rgba(0,0,0,0.1); } d-article pre { font-size: 12px; color: black; background: none; margin-top: 0; text-align: left; white-space: pre; word-spacing: normal; word-break: normal; word-wrap: normal; line-height: 1.5; -moz-tab-size: 4; -o-tab-size: 4; tab-size: 4; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; } d-article pre a { border-bottom: none; } d-article pre a:hover { border-bottom: none; text-decoration: underline; } d-article details { grid-column: text; margin-bottom: 0.8em; } @media(min-width: 768px) { d-article pre, d-article div.sourceCode, d-article div.sourceCode pre { overflow: visible !important; } d-article div.sourceCode pre { padding-left: 18px; font-size: 14px; } /* tweak for Pandoc numbered line within distill */ d-article pre.numberSource code > span { left: -2em; } d-article pre { font-size: 14px; } } figure img.external { background: white; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1); padding: 18px; box-sizing: border-box; } /* CSS for d-contents */ .d-contents { grid-column: text; color: rgba(0,0,0,0.8); font-size: 0.9em; padding-bottom: 1em; margin-bottom: 1em; padding-bottom: 0.5em; margin-bottom: 1em; padding-left: 0.25em; justify-self: start; } @media(min-width: 1000px) { .d-contents.d-contents-float { height: 0; grid-column-start: 1; grid-column-end: 4; justify-self: center; padding-right: 3em; padding-left: 2em; } } .d-contents nav h3 { font-size: 18px; margin-top: 0; margin-bottom: 1em; } .d-contents li { list-style-type: none } .d-contents nav > ul { padding-left: 0; } .d-contents ul { padding-left: 1em } .d-contents nav ul li { margin-top: 0.6em; margin-bottom: 0.2em; } .d-contents nav a { font-size: 13px; border-bottom: none; text-decoration: none color: rgba(0, 0, 0, 0.8); } .d-contents nav a:hover { text-decoration: underline solid rgba(0, 0, 0, 0.6) } .d-contents nav > ul > li > a { font-weight: 600; } .d-contents nav > ul > li > ul { font-weight: inherit; } .d-contents nav > ul > li > ul > li { margin-top: 0.2em; } .d-contents nav ul { margin-top: 0; margin-bottom: 0.25em; } .d-article-with-toc h2:nth-child(2) { margin-top: 0; } /* Figure */ .figure { position: relative; margin-bottom: 2.5em; margin-top: 1.5em; } .figure .caption { color: rgba(0, 0, 0, 0.6); font-size: 12px; line-height: 1.5em; } .figure img.external { background: white; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1); padding: 18px; box-sizing: border-box; } .figure .caption a { color: rgba(0, 0, 0, 0.6); } .figure .caption b, .figure .caption strong, { font-weight: 600; color: rgba(0, 0, 0, 1.0); } /* Citations */ d-article .citation { color: inherit; cursor: inherit; } div.hanging-indent{ margin-left: 1em; text-indent: -1em; } /* Citation hover box */ .tippy-box[data-theme~=light-border] { background-color: rgba(250, 250, 250, 0.95); } .tippy-content > p { margin-bottom: 0; padding: 2px; } /* Tweak 1000px media break to show more text */ @media(min-width: 1000px) { .base-grid, distill-header, d-title, d-abstract, d-article, d-appendix, distill-appendix, d-byline, d-footnote-list, d-citation-list, distill-footer { grid-template-columns: [screen-start] 1fr [page-start kicker-start] 80px [middle-start] 50px [text-start kicker-end] 65px 65px 65px 65px 65px 65px 65px 65px [text-end gutter-start] 65px [middle-end] 65px [page-end gutter-end] 1fr [screen-end]; grid-column-gap: 16px; } .grid { grid-column-gap: 16px; } d-article { font-size: 1.06rem; line-height: 1.7em; } figure .caption, .figure .caption, figure figcaption { font-size: 13px; } } @media(min-width: 1180px) { .base-grid, distill-header, d-title, d-abstract, d-article, d-appendix, distill-appendix, d-byline, d-footnote-list, d-citation-list, distill-footer { grid-template-columns: [screen-start] 1fr [page-start kicker-start] 60px [middle-start] 60px [text-start kicker-end] 60px 60px 60px 60px 60px 60px 60px 60px [text-end gutter-start] 60px [middle-end] 60px [page-end gutter-end] 1fr [screen-end]; grid-column-gap: 32px; } .grid { grid-column-gap: 32px; } } /* Get the citation styles for the appendix (not auto-injected on render since we do our own rendering of the citation appendix) */ d-appendix .citation-appendix, .d-appendix .citation-appendix { font-size: 11px; line-height: 15px; border-left: 1px solid rgba(0, 0, 0, 0.1); padding-left: 18px; border: 1px solid rgba(0,0,0,0.1); background: rgba(0, 0, 0, 0.02); padding: 10px 18px; border-radius: 3px; color: rgba(150, 150, 150, 1); overflow: hidden; margin-top: -12px; white-space: pre-wrap; word-wrap: break-word; } /* Include appendix styles here so they can be overridden */ d-appendix { contain: layout style; font-size: 0.8em; line-height: 1.7em; margin-top: 60px; margin-bottom: 0; border-top: 1px solid rgba(0, 0, 0, 0.1); color: rgba(0,0,0,0.5); padding-top: 60px; padding-bottom: 48px; } d-appendix h3 { grid-column: page-start / text-start; font-size: 15px; font-weight: 500; margin-top: 1em; margin-bottom: 0; color: rgba(0,0,0,0.65); } d-appendix h3 + * { margin-top: 1em; } d-appendix ol { padding: 0 0 0 15px; } @media (min-width: 768px) { d-appendix ol { padding: 0 0 0 30px; margin-left: -30px; } } d-appendix li { margin-bottom: 1em; } d-appendix a { color: rgba(0, 0, 0, 0.6); } d-appendix > * { grid-column: text; } d-appendix > d-footnote-list, d-appendix > d-citation-list, d-appendix > distill-appendix { grid-column: screen; } /* Include footnote styles here so they can be overridden */ d-footnote-list { contain: layout style; } d-footnote-list > * { grid-column: text; } d-footnote-list a.footnote-backlink { color: rgba(0,0,0,0.3); padding-left: 0.5em; } /* Anchor.js */ .anchorjs-link { /*transition: all .25s linear; */ text-decoration: none; border-bottom: none; } *:hover > .anchorjs-link { margin-left: -1.125em !important; text-decoration: none; border-bottom: none; } /* Social footer */ .social_footer { margin-top: 30px; margin-bottom: 0; color: rgba(0,0,0,0.67); } .disqus-comments { margin-right: 30px; } .disqus-comment-count { border-bottom: 1px solid rgba(0, 0, 0, 0.4); cursor: pointer; } #disqus_thread { margin-top: 30px; } .article-sharing a { border-bottom: none; margin-right: 8px; } .article-sharing a:hover { border-bottom: none; } .sidebar-section.subscribe { font-size: 12px; line-height: 1.6em; } .subscribe p { margin-bottom: 0.5em; } .article-footer .subscribe { font-size: 15px; margin-top: 45px; } .sidebar-section.custom { font-size: 12px; line-height: 1.6em; } .custom p { margin-bottom: 0.5em; } /* Styles for listing layout (hide title) */ .layout-listing d-title, .layout-listing .d-title { display: none; } /* Styles for posts lists (not auto-injected) */ .posts-with-sidebar { padding-left: 45px; padding-right: 45px; } .posts-list .description h2, .posts-list .description p { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif; } .posts-list .description h2 { font-weight: 700; border-bottom: none; padding-bottom: 0; } .posts-list h2.post-tag { border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding-bottom: 12px; } .posts-list { margin-top: 60px; margin-bottom: 24px; } .posts-list .post-preview { text-decoration: none; overflow: hidden; display: block; border-bottom: 1px solid rgba(0, 0, 0, 0.1); padding: 24px 0; } .post-preview-last { border-bottom: none !important; } .posts-list .posts-list-caption { grid-column: screen; font-weight: 400; } .posts-list .post-preview h2 { margin: 0 0 6px 0; line-height: 1.2em; font-style: normal; font-size: 24px; } .posts-list .post-preview p { margin: 0 0 12px 0; line-height: 1.4em; font-size: 16px; } .posts-list .post-preview .thumbnail { box-sizing: border-box; margin-bottom: 24px; position: relative; max-width: 500px; } .posts-list .post-preview img { width: 100%; display: block; } .posts-list .metadata { font-size: 12px; line-height: 1.4em; margin-bottom: 18px; } .posts-list .metadata > * { display: inline-block; } .posts-list .metadata .publishedDate { margin-right: 2em; } .posts-list .metadata .dt-authors { display: block; margin-top: 0.3em; margin-right: 2em; } .posts-list .dt-tags { display: block; line-height: 1em; } .posts-list .dt-tags .dt-tag { display: inline-block; color: rgba(0,0,0,0.6); padding: 0.3em 0.4em; margin-right: 0.2em; margin-bottom: 0.4em; font-size: 60%; border: 1px solid rgba(0,0,0,0.2); border-radius: 3px; text-transform: uppercase; font-weight: 500; } .posts-list img { opacity: 1; } .posts-list img[data-src] { opacity: 0; } .posts-more { clear: both; } .posts-sidebar { font-size: 16px; } .posts-sidebar h3 { font-size: 16px; margin-top: 0; margin-bottom: 0.5em; font-weight: 400; text-transform: uppercase; } .sidebar-section { margin-bottom: 30px; } .categories ul { list-style-type: none; margin: 0; padding: 0; } .categories li { color: rgba(0, 0, 0, 0.8); margin-bottom: 0; } .categories li>a { border-bottom: none; } .categories li>a:hover { border-bottom: 1px solid rgba(0, 0, 0, 0.4); } .categories .active { font-weight: 600; } .categories .category-count { color: rgba(0, 0, 0, 0.4); } @media(min-width: 768px) { .posts-list .post-preview h2 { font-size: 26px; } .posts-list .post-preview .thumbnail { float: right; width: 30%; margin-bottom: 0; } .posts-list .post-preview .description { float: left; width: 45%; } .posts-list .post-preview .metadata { float: left; width: 20%; margin-top: 8px; } .posts-list .post-preview p { margin: 0 0 12px 0; line-height: 1.5em; font-size: 16px; } .posts-with-sidebar .posts-list { float: left; width: 75%; } .posts-with-sidebar .posts-sidebar { float: right; width: 20%; margin-top: 60px; padding-top: 24px; padding-bottom: 24px; } } /* Improve display for browsers without grid (IE/Edge <= 15) */ .downlevel { line-height: 1.6em; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif; margin: 0; } .downlevel .d-title { padding-top: 6rem; padding-bottom: 1.5rem; } .downlevel .d-title h1 { font-size: 50px; font-weight: 700; line-height: 1.1em; margin: 0 0 0.5rem; } .downlevel .d-title p { font-weight: 300; font-size: 1.2rem; line-height: 1.55em; margin-top: 0; } .downlevel .d-byline { padding-top: 0.8em; padding-bottom: 0.8em; font-size: 0.8rem; line-height: 1.8em; } .downlevel .section-separator { border: none; border-top: 1px solid rgba(0, 0, 0, 0.1); } .downlevel .d-article { font-size: 1.06rem; line-height: 1.7em; padding-top: 1rem; padding-bottom: 2rem; } .downlevel .d-appendix { padding-left: 0; padding-right: 0; max-width: none; font-size: 0.8em; line-height: 1.7em; margin-bottom: 0; color: rgba(0,0,0,0.5); padding-top: 40px; padding-bottom: 48px; } .downlevel .footnotes ol { padding-left: 13px; } .downlevel .base-grid, .downlevel .distill-header, .downlevel .d-title, .downlevel .d-abstract, .downlevel .d-article, .downlevel .d-appendix, .downlevel .distill-appendix, .downlevel .d-byline, .downlevel .d-footnote-list, .downlevel .d-citation-list, .downlevel .distill-footer, .downlevel .appendix-bottom, .downlevel .posts-container { padding-left: 40px; padding-right: 40px; } @media(min-width: 768px) { .downlevel .base-grid, .downlevel .distill-header, .downlevel .d-title, .downlevel .d-abstract, .downlevel .d-article, .downlevel .d-appendix, .downlevel .distill-appendix, .downlevel .d-byline, .downlevel .d-footnote-list, .downlevel .d-citation-list, .downlevel .distill-footer, .downlevel .appendix-bottom, .downlevel .posts-container { padding-left: 150px; padding-right: 150px; max-width: 900px; } } .downlevel pre code { display: block; border-left: 2px solid rgba(0, 0, 0, .1); padding: 0 0 0 20px; font-size: 14px; } .downlevel code, .downlevel pre { color: black; background: none; font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; text-align: left; white-space: pre; word-spacing: normal; word-break: normal; word-wrap: normal; line-height: 1.5; -moz-tab-size: 4; -o-tab-size: 4; tab-size: 4; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; } .downlevel .posts-list .post-preview { color: inherit; } </style> <script type="application/javascript"> function is_downlevel_browser() { if (bowser.isUnsupportedBrowser({ msie: "12", msedge: "16"}, window.navigator.userAgent)) { return true; } else { return window.load_distill_framework === undefined; } } // show body when load is complete function on_load_complete() { // add anchors if (window.anchors) { window.anchors.options.placement = 'left'; window.anchors.add('d-article > h2, d-article > h3, d-article > h4, d-article > h5'); } // set body to visible document.body.style.visibility = 'visible'; // force redraw for leaflet widgets if (window.HTMLWidgets) { var maps = window.HTMLWidgets.findAll(".leaflet"); $.each(maps, function(i, el) { var map = this.getMap(); map.invalidateSize(); map.eachLayer(function(layer) { if (layer instanceof L.TileLayer) layer.redraw(); }); }); } // trigger 'shown' so htmlwidgets resize $('d-article').trigger('shown'); } function init_distill() { init_common(); // create front matter var front_matter = $('<d-front-matter></d-front-matter>'); $('#distill-front-matter').wrap(front_matter); // create d-title $('.d-title').changeElementType('d-title'); // separator var separator = '<hr class="section-separator" style="clear: both"/>'; // prepend separator above appendix $('.d-byline').before(separator); $('.d-article').before(separator); // create d-byline var byline = $('<d-byline></d-byline>'); $('.d-byline').replaceWith(byline); // create d-article var article = $('<d-article></d-article>'); $('.d-article').wrap(article).children().unwrap(); // move posts container into article $('.posts-container').appendTo($('d-article')); // create d-appendix $('.d-appendix').changeElementType('d-appendix'); // flag indicating that we have appendix items var appendix = $('.appendix-bottom').children('h3').length > 0; // replace footnotes with <d-footnote> $('.footnote-ref').each(function(i, val) { appendix = true; var href = $(this).attr('href'); var id = href.replace('#', ''); var fn = $('#' + id); var fn_p = $('#' + id + '>p'); fn_p.find('.footnote-back').remove(); var text = fn_p.html(); var dtfn = $('<d-footnote></d-footnote>'); dtfn.html(text); $(this).replaceWith(dtfn); }); // remove footnotes $('.footnotes').remove(); // move refs into #references-listing $('#references-listing').replaceWith($('#refs')); $('h1.appendix, h2.appendix').each(function(i, val) { $(this).changeElementType('h3'); }); $('h3.appendix').each(function(i, val) { var id = $(this).attr('id'); $('.d-contents a[href="#' + id + '"]').parent().remove(); appendix = true; $(this).nextUntil($('h1, h2, h3')).addBack().appendTo($('d-appendix')); }); // show d-appendix if we have appendix content $("d-appendix").css('display', appendix ? 'grid' : 'none'); // localize layout chunks to just output $('.layout-chunk').each(function(i, val) { // capture layout var layout = $(this).attr('data-layout'); // apply layout to markdown level block elements var elements = $(this).children().not('details, div.sourceCode, pre, script'); elements.each(function(i, el) { var layout_div = $('<div class="' + layout + '"></div>'); if (layout_div.hasClass('shaded')) { var shaded_content = $('<div class="shaded-content"></div>'); $(this).wrap(shaded_content); $(this).parent().wrap(layout_div); } else { $(this).wrap(layout_div); } }); // unwrap the layout-chunk div $(this).children().unwrap(); }); // remove code block used to force highlighting css $('.distill-force-highlighting-css').parent().remove(); // remove empty line numbers inserted by pandoc when using a // custom syntax highlighting theme, except when numbering line // in code chunk $('pre:not(.numberLines) code.sourceCode a:empty').remove(); // load distill framework load_distill_framework(); // wait for window.distillRunlevel == 4 to do post processing function distill_post_process() { if (!window.distillRunlevel || window.distillRunlevel < 4) return; // hide author/affiliations entirely if we have no authors var front_matter = JSON.parse($("#distill-front-matter").html()); var have_authors = front_matter.authors && front_matter.authors.length > 0; if (!have_authors) $('d-byline').addClass('hidden'); // article with toc class $('.d-contents').parent().addClass('d-article-with-toc'); // strip links that point to # $('.authors-affiliations').find('a[href="#"]').removeAttr('href'); // add orcid ids $('.authors-affiliations').find('.author').each(function(i, el) { var orcid_id = front_matter.authors[i].orcidID; var author_name = front_matter.authors[i].author if (orcid_id) { var a = $('<a></a>'); a.attr('href', 'https://orcid.org/' + orcid_id); var img = $('<img></img>'); img.addClass('orcid-id'); img.attr('alt', author_name ? 'ORCID ID for ' + author_name : 'ORCID ID'); img.attr('src','data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo1N0NEMjA4MDI1MjA2ODExOTk0QzkzNTEzRjZEQTg1NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozM0NDOEJGNEZGNTcxMUUxODdBOEVCODg2RjdCQ0QwOSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozM0NDOEJGM0ZGNTcxMUUxODdBOEVCODg2RjdCQ0QwOSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkZDN0YxMTc0MDcyMDY4MTE5NUZFRDc5MUM2MUUwNEREIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjU3Q0QyMDgwMjUyMDY4MTE5OTRDOTM1MTNGNkRBODU3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+84NovQAAAR1JREFUeNpiZEADy85ZJgCpeCB2QJM6AMQLo4yOL0AWZETSqACk1gOxAQN+cAGIA4EGPQBxmJA0nwdpjjQ8xqArmczw5tMHXAaALDgP1QMxAGqzAAPxQACqh4ER6uf5MBlkm0X4EGayMfMw/Pr7Bd2gRBZogMFBrv01hisv5jLsv9nLAPIOMnjy8RDDyYctyAbFM2EJbRQw+aAWw/LzVgx7b+cwCHKqMhjJFCBLOzAR6+lXX84xnHjYyqAo5IUizkRCwIENQQckGSDGY4TVgAPEaraQr2a4/24bSuoExcJCfAEJihXkWDj3ZAKy9EJGaEo8T0QSxkjSwORsCAuDQCD+QILmD1A9kECEZgxDaEZhICIzGcIyEyOl2RkgwAAhkmC+eAm0TAAAAABJRU5ErkJggg=='); a.append(img); $(this).append(a); } }); // hide elements of author/affiliations grid that have no value function hide_byline_column(caption) { $('d-byline').find('h3:contains("' + caption + '")').parent().css('visibility', 'hidden'); } // affiliations var have_affiliations = false; for (var i = 0; i<front_matter.authors.length; ++i) { var author = front_matter.authors[i]; if (author.affiliation !== " ") { have_affiliations = true; break; } } if (!have_affiliations) $('d-byline').find('h3:contains("Affiliations")').css('visibility', 'hidden'); // published date if (!front_matter.publishedDate) hide_byline_column("Published"); // document object identifier var doi = $('d-byline').find('h3:contains("DOI")'); var doi_p = doi.next().empty(); if (!front_matter.doi) { // if we have a citation and valid citationText then link to that if ($('#citation').length > 0 && front_matter.citationText) { doi.html('Citation'); $('<a href="#citation"></a>') .text(front_matter.citationText) .appendTo(doi_p); } else { hide_byline_column("DOI"); } } else { $('<a></a>') .attr('href', "https://doi.org/" + front_matter.doi) .html(front_matter.doi) .appendTo(doi_p); } // change plural form of authors/affiliations if (front_matter.authors.length === 1) { var grid = $('.authors-affiliations'); grid.children('h3:contains("Authors")').text('Author'); grid.children('h3:contains("Affiliations")').text('Affiliation'); } // remove d-appendix and d-footnote-list local styles $('d-appendix > style:first-child').remove(); $('d-footnote-list > style:first-child').remove(); // move appendix-bottom entries to the bottom $('.appendix-bottom').appendTo('d-appendix').children().unwrap(); $('.appendix-bottom').remove(); // hoverable references $('span.citation[data-cites]').each(function() { const citeChild = $(this).children()[0] // Do not process if @xyz has been used without escaping and without bibliography activated // https://github.com/rstudio/distill/issues/466 if (citeChild === undefined) return true if (citeChild.nodeName == "D-FOOTNOTE") { var fn = citeChild $(this).html(fn.shadowRoot.querySelector("sup")) $(this).id = fn.id fn.remove() } var refs = $(this).attr('data-cites').split(" "); var refHtml = refs.map(function(ref) { // Could use CSS.escape too here, we insure backward compatibility in navigator return "<p>" + $('div[id="ref-' + ref + '"]').html() + "</p>"; }).join("\n"); window.tippy(this, { allowHTML: true, content: refHtml, maxWidth: 500, interactive: true, interactiveBorder: 10, theme: 'light-border', placement: 'bottom-start' }); }); // fix footnotes in tables (#411) // replacing broken distill.pub feature $('table d-footnote').each(function() { // we replace internal showAtNode methode which is triggered when hovering a footnote this.hoverBox.showAtNode = function(node) { // ported from https://github.com/distillpub/template/pull/105/files calcOffset = function(elem) { let x = elem.offsetLeft; let y = elem.offsetTop; // Traverse upwards until an `absolute` element is found or `elem` // becomes null. while (elem = elem.offsetParent && elem.style.position != 'absolute') { x += elem.offsetLeft; y += elem.offsetTop; } return { left: x, top: y }; } // https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetTop const bbox = node.getBoundingClientRect(); const offset = calcOffset(node); this.show([offset.left + bbox.width, offset.top + bbox.height]); } }) // clear polling timer clearInterval(tid); // show body now that everything is ready on_load_complete(); } var tid = setInterval(distill_post_process, 50); distill_post_process(); } function init_downlevel() { init_common(); // insert hr after d-title $('.d-title').after($('<hr class="section-separator"/>')); // check if we have authors var front_matter = JSON.parse($("#distill-front-matter").html()); var have_authors = front_matter.authors && front_matter.authors.length > 0; // manage byline/border if (!have_authors) $('.d-byline').remove(); $('.d-byline').after($('<hr class="section-separator"/>')); $('.d-byline a').remove(); // remove toc $('.d-contents').remove(); // move appendix elements $('h1.appendix, h2.appendix').each(function(i, val) { $(this).changeElementType('h3'); }); $('h3.appendix').each(function(i, val) { $(this).nextUntil($('h1, h2, h3')).addBack().appendTo($('.d-appendix')); }); // inject headers into references and footnotes var refs_header = $('<h3></h3>'); refs_header.text('References'); $('#refs').prepend(refs_header); var footnotes_header = $('<h3></h3'); footnotes_header.text('Footnotes'); $('.footnotes').children('hr').first().replaceWith(footnotes_header); // move appendix-bottom entries to the bottom $('.appendix-bottom').appendTo('.d-appendix').children().unwrap(); $('.appendix-bottom').remove(); // remove appendix if it's empty if ($('.d-appendix').children().length === 0) $('.d-appendix').remove(); // prepend separator above appendix $('.d-appendix').before($('<hr class="section-separator" style="clear: both"/>')); // trim code $('pre>code').each(function(i, val) { $(this).html($.trim($(this).html())); }); // move posts-container right before article $('.posts-container').insertBefore($('.d-article')); $('body').addClass('downlevel'); on_load_complete(); } function init_common() { // jquery plugin to change element types (function($) { $.fn.changeElementType = function(newType) { var attrs = {}; $.each(this[0].attributes, function(idx, attr) { attrs[attr.nodeName] = attr.nodeValue; }); this.replaceWith(function() { return $("<" + newType + "/>", attrs).append($(this).contents()); }); }; })(jQuery); // prevent underline for linked images $('a > img').parent().css({'border-bottom' : 'none'}); // mark non-body figures created by knitr chunks as 100% width $('.layout-chunk').each(function(i, val) { var figures = $(this).find('img, .html-widget'); // ignore leaflet img layers (#106) figures = figures.filter(':not(img[class*="leaflet"])') if ($(this).attr('data-layout') !== "l-body") { figures.css('width', '100%'); } else { figures.css('max-width', '100%'); figures.filter("[width]").each(function(i, val) { var fig = $(this); fig.css('width', fig.attr('width') + 'px'); }); } }); // auto-append index.html to post-preview links in file: protocol // and in rstudio ide preview $('.post-preview').each(function(i, val) { if (window.location.protocol === "file:") $(this).attr('href', $(this).attr('href') + "index.html"); }); // get rid of index.html references in header if (window.location.protocol !== "file:") { $('.distill-site-header a[href]').each(function(i,val) { $(this).attr('href', $(this).attr('href').replace(/^index[.]html/, "./")); }); } // add class to pandoc style tables $('tr.header').parent('thead').parent('table').addClass('pandoc-table'); $('.kable-table').children('table').addClass('pandoc-table'); // add figcaption style to table captions $('caption').parent('table').addClass("figcaption"); // initialize posts list if (window.init_posts_list) window.init_posts_list(); // implmement disqus comment link $('.disqus-comment-count').click(function() { window.headroom_prevent_pin = true; $('#disqus_thread').toggleClass('hidden'); if (!$('#disqus_thread').hasClass('hidden')) { var offset = $(this).offset(); $(window).resize(); $('html, body').animate({ scrollTop: offset.top - 35 }); } }); } document.addEventListener('DOMContentLoaded', function() { if (is_downlevel_browser()) init_downlevel(); else window.addEventListener('WebComponentsReady', init_distill); }); </script> <style type="text/css"> /* base variables */ /* Edit the CSS properties in this file to create a custom Distill theme. Only edit values in the right column for each row; values shown are the CSS defaults. To return any property to the default, you may set its value to: unset All rows must end with a semi-colon. */ /* Optional: embed custom fonts here with `@import` */ /* This must remain at the top of this file. */ html { /*-- Main font sizes --*/ --title-size: 50px; --body-size: 1.06rem; --code-size: 14px; --aside-size: 12px; --fig-cap-size: 13px; /*-- Main font colors --*/ --title-color: #000000; --header-color: rgba(0, 0, 0, 0.8); --body-color: rgba(0, 0, 0, 0.8); --aside-color: rgba(0, 0, 0, 0.6); --fig-cap-color: rgba(0, 0, 0, 0.6); /*-- Specify custom fonts ~~~ must be imported above --*/ --heading-font: sans-serif; --mono-font: monospace; --body-font: sans-serif; --navbar-font: sans-serif; /* websites + blogs only */ } /*-- ARTICLE METADATA --*/ d-byline { --heading-size: 0.6rem; --heading-color: rgba(0, 0, 0, 0.5); --body-size: 0.8rem; --body-color: rgba(0, 0, 0, 0.8); } /*-- ARTICLE TABLE OF CONTENTS --*/ .d-contents { --heading-size: 18px; --contents-size: 13px; } /*-- ARTICLE APPENDIX --*/ d-appendix { --heading-size: 15px; --heading-color: rgba(0, 0, 0, 0.65); --text-size: 0.8em; --text-color: rgba(0, 0, 0, 0.5); } /*-- WEBSITE HEADER + FOOTER --*/ /* These properties only apply to Distill sites and blogs */ .distill-site-header { --title-size: 18px; --text-color: rgba(255, 255, 255, 0.8); --text-size: 15px; --hover-color: white; --bkgd-color: #0F2E3D; } .distill-site-footer { --text-color: rgba(255, 255, 255, 0.8); --text-size: 15px; --hover-color: white; --bkgd-color: #0F2E3D; } /*-- Additional custom styles --*/ /* Add any additional CSS rules below */ </style> <style type="text/css"> /* base variables */ /* Edit the CSS properties in this file to create a custom Distill theme. Only edit values in the right column for each row; values shown are the CSS defaults. To return any property to the default, you may set its value to: unset All rows must end with a semi-colon. */ /* Optional: embed custom fonts here with `@import` */ /* This must remain at the top of this file. */ html { /*-- Main font sizes --*/ --title-size: 50px; --body-size: 1.06rem; --code-size: 14px; --aside-size: 12px; --fig-cap-size: 13px; /*-- Main font colors --*/ --title-color: #000000; --header-color: rgba(0, 0, 0, 0.8); --body-color: rgba(0, 0, 0, 0.8); --aside-color: rgba(0, 0, 0, 0.6); --fig-cap-color: rgba(0, 0, 0, 0.6); /*-- Specify custom fonts ~~~ must be imported above --*/ --heading-font: sans-serif; --mono-font: monospace; --body-font: sans-serif; --navbar-font: sans-serif; /* websites + blogs only */ } /*-- ARTICLE METADATA --*/ d-byline { --heading-size: 0.6rem; --heading-color: rgba(0, 0, 0, 0.5); --body-size: 0.8rem; --body-color: rgba(0, 0, 0, 0.8); } /*-- ARTICLE TABLE OF CONTENTS --*/ .d-contents { --heading-size: 18px; --contents-size: 13px; } /*-- ARTICLE APPENDIX --*/ d-appendix { --heading-size: 15px; --heading-color: rgba(0, 0, 0, 0.65); --text-size: 0.8em; --text-color: rgba(0, 0, 0, 0.7); } /*-- WEBSITE HEADER + FOOTER --*/ /* These properties only apply to Distill sites and blogs */ .distill-site-header { --title-size: 18px; --text-color: rgba(0, 0, 0, 0.8); --text-size: 15px; --hover-color: black; --bkgd-color: #ffffff; } .distill-site-footer { --text-color: rgba(0, 0, 0, 0.8); --text-size: 15px; --hover-color: black; --bkgd-color: #fafafa; } /*-- Additional custom styles --*/ /* Add any additional CSS rules below */ .nav-right > a { text-transform: uppercase; } d-title h1, d-title p, d-title figure, d-abstract p, d-abstract b { grid-column: page; } .rj-blue { color: #2467bb; } ul li { line-height: 1.6; margin-top: 0em; margin-bottom: 0em; }</style> <style type="text/css"> /* base style */ /* FONT FAMILIES */ :root { --heading-default: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif; --mono-default: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; --body-default: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif; } body, .posts-list .post-preview p, .posts-list .description p { font-family: var(--body-font), var(--body-default); } h1, h2, h3, h4, h5, h6, .posts-list .post-preview h2, .posts-list .description h2 { font-family: var(--heading-font), var(--heading-default); } d-article div.sourceCode code, d-article pre code { font-family: var(--mono-font), var(--mono-default); } /*-- TITLE --*/ d-title h1, .posts-list > h1 { color: var(--title-color, black); } d-title h1 { font-size: var(--title-size, 50px); } /*-- HEADERS --*/ d-article h1, d-article h2, d-article h3, d-article h4, d-article h5, d-article h6 { color: var(--header-color, rgba(0, 0, 0, 0.8)); } /*-- BODY --*/ d-article > p, /* only text inside of <p> tags */ d-article > ul, /* lists */ d-article > ol { color: var(--body-color, rgba(0, 0, 0, 0.8)); font-size: var(--body-size, 1.06rem); } /*-- CODE --*/ d-article div.sourceCode code, d-article pre code { font-size: var(--code-size, 14px); } /*-- ASIDE --*/ d-article aside { font-size: var(--aside-size, 12px); color: var(--aside-color, rgba(0, 0, 0, 0.6)); } /*-- FIGURE CAPTIONS --*/ figure .caption, figure figcaption, .figure .caption { font-size: var(--fig-cap-size, 13px); color: var(--fig-cap-color, rgba(0, 0, 0, 0.6)); } /*-- METADATA --*/ d-byline h3 { font-size: var(--heading-size, 0.6rem); color: var(--heading-color, rgba(0, 0, 0, 0.5)); } d-byline { font-size: var(--body-size, 0.8rem); color: var(--body-color, rgba(0, 0, 0, 0.8)); } d-byline a, d-article d-byline a { color: var(--body-color, rgba(0, 0, 0, 0.8)); } /*-- TABLE OF CONTENTS --*/ .d-contents nav h3 { font-size: var(--heading-size, 18px); } .d-contents nav a { font-size: var(--contents-size, 13px); } /*-- APPENDIX --*/ d-appendix h3 { font-size: var(--heading-size, 15px); color: var(--heading-color, rgba(0, 0, 0, 0.65)); } d-appendix { font-size: var(--text-size, 0.8em); color: var(--text-color, rgba(0, 0, 0, 0.5)); } d-appendix d-footnote-list a.footnote-backlink { color: var(--text-color, rgba(0, 0, 0, 0.5)); } /*-- WEBSITE HEADER + FOOTER --*/ .distill-site-header .title { font-size: var(--title-size, 18px); font-family: var(--navbar-font), var(--heading-default); } .distill-site-header a, .nav-dropdown .nav-dropbtn { font-family: var(--navbar-font), var(--heading-default); } .nav-dropdown .nav-dropbtn { color: var(--text-color, rgba(255, 255, 255, 0.8)); font-size: var(--text-size, 15px); } .distill-site-header a:hover, .nav-dropdown:hover .nav-dropbtn { color: var(--hover-color, white); } .distill-site-header { font-size: var(--text-size, 15px); color: var(--text-color, rgba(255, 255, 255, 0.8)); background-color: var(--bkgd-color, #0F2E3D); } .distill-site-footer { font-size: var(--text-size, 15px); color: var(--text-color, rgba(255, 255, 255, 0.8)); background-color: var(--bkgd-color, #0F2E3D); } .distill-site-footer a:hover { color: var(--hover-color, white); }</style> <!--/radix_placeholder_distill--> <script src="site_libs/header-attrs-2.28/header-attrs.js"></script> <script src="site_libs/popper-2.6.0/popper.min.js"></script> <link href="site_libs/tippy-6.2.7/tippy.css" rel="stylesheet" /> <link href="site_libs/tippy-6.2.7/tippy-light-border.css" rel="stylesheet" /> <script src="site_libs/tippy-6.2.7/tippy.umd.min.js"></script> <script src="site_libs/anchor-4.2.2/anchor.min.js"></script> <script src="site_libs/bowser-1.9.3/bowser.min.js"></script> <script src="site_libs/webcomponents-2.0.0/webcomponents.js"></script> <script src="site_libs/distill-2.2.21/template.v2.js"></script> <!--radix_placeholder_site_in_header--> <!--/radix_placeholder_site_in_header--> </head> <body> <!--radix_placeholder_front_matter--> <script id="distill-front-matter" type="text/json"> {"title":"How to submit your article","authors":[]} </script> <!--/radix_placeholder_front_matter--> <!--radix_placeholder_navigation_before_body--> <header class="header header--fixed" role="banner"> <nav class="distill-site-nav distill-site-header"> <div class="nav-left"> <a class="logo" href="index.html"> <img src="resources/rlogo.png" alt="Logo"/> </a> <a href="index.html" class="title">The R Journal</a> </div> <div class="nav-right"> <a href="index.html">Home</a> <a href="issues.html">Issues</a> <a href="news.html">News</a> <a href="issues/2023-4">Current</a> <a href="submissions.html">Submit</a> <a href="articles.xml"> <i class="fa fa-rss" aria-hidden="true"></i> </a> <a href="javascript:void(0);" class="nav-toggle">☰</a> </div> </nav> </header> <!--/radix_placeholder_navigation_before_body--> <!--radix_placeholder_site_before_body--> <!--/radix_placeholder_site_before_body--> <div class="d-title"> <h1>How to submit your article</h1> <!--radix_placeholder_categories--> <!--/radix_placeholder_categories--> </div> <div class="d-article"> <div class="layout-chunk" data-layout="l-body"> <style type="text/css"> d-article > * { grid-column: page; } </style> </div> <p>Articles for the R Journal are short to medium length, no more than 20 pages, on topics of interest to the R community. Articles must not be published or submitted for publication elsewhere. The submission needs to include:</p> <ul> <li>paper files to build the article including the <code>.Rmd</code>, <code>.tex</code>, <code>.bib</code>, <code>.sty</code>, figures, and the output files <code>.html</code>, <code>.pdf</code>.</li> <li>files to reproduce the results presented in the paper, including R scripts, and data.</li> <li>motivating letter that describes why your paper is suitable for the consideration by the R Journal.</li> <li>if needed, supplementary files that might include additional technical details or examples.</li> </ul> <div class="rj-blue"> Read the information below on the requirements for files and format and then <strong><a href="https://forms.gle/ykj6QcoGQD5ctnA5A">CLICK HERE</a></strong> to submit an article, re-submission, or revision. </div> <p> <p>We are also keen to welcome new reviewers for the R Journal. If you would like to volunteer to review articles, please complete this <a href="https://docs.google.com/forms/d/e/1FAIpQLSf8EmpF85ASWqPHXqV0vdQd-GHhNBaAZZEYf4qxO3gTl-eGyA/viewform">form here</a>. You should have at least completed an undergraduate degree, and be an active R user.</p> <h1 id="creating-your-article">Creating your article</h1> <h3 id="rmarkdown-to-output-html-and-pdf">Rmarkdown to output html and pdf</h3> <p>The <a href="https://rjournal.github.io/rjtools/">rjtools</a> package has a template to create the files needed for a submission in the form required by the R Journal.</p> <p>It is strongly recommended that you use the <code>create_article()</code> function. Knitting the Rmd will generate both an HTML and PDF format of your paper.</p> <p>When writing your article you should aim to write without specific reference to HTML and LaTeX codes. If you do need to write code specific to the HTML or PDF output, you can use <code>knitr::is_html_output()</code> and <code>knitr::is_latex_output()</code> to conditionally produce a particular output.</p> <p>The web articles for the R Journal are based on the distill framework, which provides several styling and arrangement options for your article contents. The <strong>distill R package documentation</strong> (generally also applicable to articles written for the R Journal) describes various article elements and Rmarkdown syntax: <a href="https://rstudio.github.io/distill/" class="uri">https://rstudio.github.io/distill/</a>.</p> <p>We are especially looking for creative uses of interactive content in HTML formatted articles. This will require that you make different code chunks evaluated conditionally using <code>eval=knitr::is_html_output()</code> or <code>eval=knitr::is_latex_output()</code> with appropriate re-captioning, and conditional inline reference links. Interactive plots should be produced with a manageable file size (aim for under 10Mb) which may require small data examples. Figures and tabes for the <code>html</code> format should have alt-text in the chunk specification, to further assist with accessibility.</p> <h3 id="converting-from-rticlesrjournal_article-rmarkdown">Converting from rticles:rjournal_article Rmarkdown</h3> <p>If you currently use the <code>rticles::rjournal_article</code> output format for R Markdown, the change involves five steps: (1) change output formats to <code>rjtools::rjournal_web_article</code> to switch to the new style, (2) remove any latex specific functionality, (3) change figure, table references to <code>\@ref()</code> and (4) add the <code>rjournal.csl</code> and <code>rjournal.css</code> template files to your folder, updating YAML to utilise them, and (5) set the reference to the <code>.bib</code> in the YAML.</p> <h3 id="traditional-latex-format">Traditional latex format</h3> <p>Articles can also be written using the traditional <a href="https://journal.r-project.org/share/RJtemplate.zip">latex template</a>. Using this style you will need to provide RJwrapper.tex, RJwrapper.pdf, RJournal.sty, your-article.tex (which contains the content of your paper), your-article.bib, your-article.R (to reproduce results in your paper), in addition to the motivation letter. You should avoid using any other specialist latex style files. The <code>rjtools</code> check functions described below can also be applied to check your files prior to submission.</p> <h1 id="checking-your-article">Checking your article</h1> <p>The <code>rjtools</code> package has a number of functions which can help you check that your article is ready to submit. These include:</p> <ul> <li><code>initial_check_article()</code> does multiple checks on the files in your paper submission folder <ul> <li><code>check_wrappers()</code> that the files RJournal.tex and RJournal.pdf are present</li> <li><code>check_filenames()</code> file names are consistent and as requested</li> <li><code>check_unnecessary_files()</code> that there are no extra files than those necessary and requested</li> <li><code>check_cover_letter()</code> there is a cover letter with the files to be submitted</li> <li><code>check_title()</code> that the title is in title case</li> <li><code>check_section()</code> that section headings are in sentence case</li> <li><code>check_spelling()</code> does a spell-check</li> <li><code>check_proposed_pkg()</code> package is available on CRAN or bioconductor</li> <li><code>check_packages_available()</code> additionally referenced packaged are also available on CRA or Bioconductor</li> </ul></li> <li>Each of these can also be run individually.</li> </ul> <h1 id="file-format-for-submission">File format for submission</h1> <h3 id="new-submission">New submission</h3> <p>To submit a new article to the R Journal, you will need to complete. You will need to provide these details:</p> <ul> <li>Your name.</li> <li>An email address for the corresponding author. Try to ensure it is an address that will be available in the long term, through the review process and after the paper is published so that readers can contact you about your work if desired.</li> <li>An alternate email address, in case email to the primary address doesn’t respond to editors requests.</li> <li>Names of all authors.</li> <li>Article title.</li> <li>Article type.</li> <li>Article keywords/tags. You should be prepared to select at least one or two from the list and you are free to add an additional words or phrases that accurately describe your paper.</li> <li><strong>Zip</strong> file containing: <ul> <li>finished paper files <code>.pdf</code> and <code>.html</code>.</li> <li>paper files to build the article including the <code>.Rmd</code>, <code>.tex</code>, <code>.bib</code>, <code>.sty</code>, figures.</li> <li>file to reproduce the results, including R scripts, and data.</li> <li>motivating letter that describes why your paper is suitable for the consideration by the R Journal.</li> <li>reproducibility (supplementary) files in order that results reported in your paper can be reproduced, plus any additional files that contain additional technical details for your work or extra examples.</li> </ul></li> <li><strong>A list of the reproducibility and supplementary files</strong>, exactly as they are placed in your paper directory, to be entered comma-delimited like <code>mypaper.Rmd, data/mydata.rds, scripts/mycode.R, appendix.pdf</code>. This list is used to automatically build the <code>.zip</code> file that is distributed along with your paper as supplementary materials, when it is published. Thus it is important that you provide the comma-delimited file names to streamline the build of your paper. If you have a lot of data and code files you so that listing them all is prohibitive, you can zip them into one file to list. Note that, figure files are not considered supplementary materials for the R Journal.</li> </ul> <p>You may have problems submitting if size of your submission zip file is more than 10Mb. If you have large files, for example, data files, you can make them available on an alternative site and provide the links in the paper. If you have problems, please contact the Editor-in-Chief at <a href="mailto:r-journal@r-project.org" class="email">r-journal@r-project.org</a>.</p> <p>Your paper will be checked for reproducibility by running the code provided. Please ensure that the examples can be run in a timely manner, perhaps by reducing the example data size. If necessary, intermediate output files, can be provided to shorten the run time.</p> <h1 id="what-happens-after-you-submit-a-paper">What happens after you submit a paper</h1> <p>Once you have submitted a paper, the editorial board will go through the following steps.</p> <ol type="1"> <li>Deceide if your submission is technically in the correct format. In particular: <ul> <li>are all the requested files there and of the correct format?</li> <li>does the reproducibility code run?</li> <li>is all code used open source and available via CRAN or BioConductor?</li> <li>are all the data files (if any) in an open, non-proprietary format?</li> </ul></li> <li>If the technical test is passed, it is decided whether the submission is amenable for peer review: <ul> <li>is the topic within scope?</li> <li>is the paper properly organized?</li> <li>is the writing style suitable for review?</li> </ul></li> <li>If the submission passes the second test, it will be sent out for review. This process might take several months. You will receive one or more reviews, possibly with notes from one of the (associate) editors, and a <em>verdict</em>. There are four possible verdicts: <ul> <li><strong>Accepted</strong> Your paper will be published in the R Journal. You will are asked to upload a final version that will be proof-read and you will receive a print proof before publication.</li> <li><strong>Minor revisions</strong> The paper can be accepted conditional on a number of smaller revisions in the manuscript and/or the code. You are expected to fix these issies within three months, and resubmit along with a letter where you describe, point-by-point, how the comments of the reviewers have been addressed. The paper will not be reviewed again by peer reviewers, but the editor will check whether the points have been sufficiently addressed.</li> <li><strong>Major revisions</strong> The manuscript and/or the code need severe updates before the manuscript can be accepted for publication. You are expected to fix the issies within three months, and resubmit along with a letter where you describe, point-by-point how the comments of the reviewers have been addressed. The paper will be send back to the reviewers for a second round of review, which may result in any verdict.</li> <li><strong>Reject</strong> Your paper is found to be unsuited for publication in the R Journal. No resubmission is expected.</li> </ul></li> </ol> <p>Re-submission and revisions to accepted articles are received through the same site where new submissions are received (link below). When providing a re-submission or revision, you will need to <strong>enter the identifier of the original submission</strong> in the last field of the submission form. This also needs to be done if your paper has previously been rejected, and you have made appropriate corrections for it to be considered again.</p> <h3 id="note-on-special-issue-articles">Note on special issue articles</h3> <p>A special issue article can be considered to be a refereed journal article and generally carries more weight than an unrefereed conference proceedings.</p> <p>Conference committees will designate a “Conference Editor in Chief” (CEiC) who will be primarily responsible for putting the special issue together. For this pilot to be successful, it is important that putting together the special issue does not significantly increase the workload of the regular editors or the administrative team that helps to build the issues. It will be the responsibility of the CEiC to identify associate editors if needed, assign reviewers, accept and reject papers, and assemble the special issue. It will also be the responsibility of the CEiC to make sure that the issue reflects the diversity of the community, and that the <a href="https://wiki.r-consortium.org/view/R_Consortium_and_the_R_Community_Code_of_Conduct">R Consortium and R Community Code of Conduct</a> is followed during the process.</p> <div class="sourceCode" id="cb1"><pre class="sourceCode r distill-force-highlighting-css"><code class="sourceCode r"></code></pre></div> <!--radix_placeholder_article_footer--> <!--/radix_placeholder_article_footer--> </div> <div class="d-appendix"> </div> <!--radix_placeholder_site_after_body--> <!--/radix_placeholder_site_after_body--> <!--radix_placeholder_appendices--> <div class="appendix-bottom"></div> <!--/radix_placeholder_appendices--> <!--radix_placeholder_navigation_after_body--> <div class="distill-site-nav distill-site-footer"> <p>© The R Foundation, <a href="mailto:r-journal@r-project.org">web page contact</a>.</p> </div> <!--/radix_placeholder_navigation_after_body--> </body> </html>