无法删除侧边距rmarkdown文件

问题描述 投票:0回答:1

我需要从侧边距中删除空间,因为它占用了大部分空间。 提供了示例代码。主要代码从互联网获取数据。 MainStackoverflow.RMD 文件将调用 ChildStackoverflow.RMD 文件并在循环中生成最终的 html。 主代码中有两个函数用于在运行时生成图表。

主要代码:

    library('quantmod')
    library('ggplot2')
    getSymbols("AAPL",  from = "2018/01/01",to = Sys.Date(), periodicity = "daily")
    getSymbols("MSFT",  from = "2018/01/01",to = Sys.Date(), periodicity = "daily")
    getSymbols("META",  from = "2018/01/01",to = Sys.Date(), periodicity = "daily")
    getSymbols("ORCL",  from = "2018/01/01",to = Sys.Date(), periodicity = "daily")
    v_lst_cols = c('OPEN','HIGH','LOW','CLOSE','VOLUME','ADJUSTED','DATE')
    df_AAPL <- as.data.frame(AAPL)
    df_AAPL$DATE <- index(AAPL)    
    rownames(df_AAPL) <- NULL
    names(df_AAPL) <- v_lst_cols
    df_AAPL$SYMBOL <- 'AAPL'
    df_MSFT <- as.data.frame(MSFT)
    df_MSFT$DATE <- index(MSFT)    
    rownames(df_MSFT) <- NULL
    names(df_MSFT) <- v_lst_cols
    df_MSFT$SYMBOL <- 'MSFT'
    df_META <- as.data.frame(META)
    df_META$DATE <- index(META)    
    rownames(df_META) <- NULL
    names(df_META) <- v_lst_cols
    df_META$SYMBOL <- 'META'
    df_ORCL <- as.data.frame(ORCL)
    df_ORCL$DATE <- index(ORCL)    
    rownames(df_ORCL) <- NULL
    names(df_ORCL) <- v_lst_cols
    df_ORCL$SYMBOL <- 'ORCL'
    
    df_all <- rbind(df_AAPL, df_MSFT,df_META,df_ORCL)
    df_all <- df_all[, c('SYMBOL','DATE','OPEN','HIGH','LOW','CLOSE','VOLUME','ADJUSTED')]
    names(df_all) <- c('Symbol','Date','Open','High','Low','Close','Volume','Adjusted')
    v_lst_all_symbol = c('AAPL','MSFT','META','ORCL')
    v_glbl_shrt_rpt_prd = 30
    v_glbl_long_rpt_prd = 220
    v_par_list = list()
    for(i in 1:length(v_lst_all_symbol)){
      v_tmp_list = list(Symbol = v_lst_all_symbol[i])
      v_par_list[[i]] =v_tmp_list
    }
    v_max_date = max(df_all$Date)
    p_dt_hdr_fixed_file = data.table(df_all[df_all$Date == v_max_date,])
    #- - - - - - - - 
    func_plot_nyrs_data_test <- function(p_yrs,p_Symbol){
      #print(i_yrs)
      if ( p_yrs == 5) { v_width = "6 month"}
      if ( p_yrs == 2) { v_width = "3 month" }
      print(p_Symbol)
      df_tmp_hist_dat <- df_all %>% dplyr::filter(Symbol == p_Symbol) %>% dplyr::filter(as.Date(Date) > Sys.Date()-p_yrs*365) 
      v_cur_close <- df_tmp_hist_dat$Close[1]
      v_low_min   = min(df_tmp_hist_dat$Low,na.rm = TRUE)
      v_high_max  = max(df_tmp_hist_dat$High, na.rm = TRUE)
      v_def       = round((v_high_max- v_low_min)/20)
      if (v_def == 0) {
        v_def  = round((v_high_max- v_low_min)/20,1)}
      if (v_def == 0) {
        v_def  = round((v_high_max- v_low_min)/20,2)}  
      if (v_def > 0) {
        if (nrow(df_tmp_hist_dat) >= 60) {
          return(ggplot(df_tmp_hist_dat, aes(x = Date, y = Close, group = 1)) + geom_line(data = ) + 
                   scale_x_date(date_labels = "%Y%b",breaks = scales::date_breaks(width = v_width)) + 
                   theme(text = element_text(size = 10),axis.text.x = element_text(face = "bold", color = "#993333",size = 10, angle = 45),
                         axis.text.y = element_text(face = "plain", color = "#993333",size = 9, angle = 0)) + 
                   scale_y_continuous(breaks = c(seq(1,50000,v_def))) + theme(panel.background = element_rect(fill = 'grey87'),panel.grid.major.y = element_line(colour = c("chartreuse4","cadetblue4", "brown4","blue1","deeppink"), linetype = 4)) + 
                   labs(subtitle = paste(p_Symbol,p_yrs,'yrs') ))
        }
      } 
    }
    ------
      func_base_make_candle_chart_new_test <- function(p_symbol,p_grph_prd, p_dat = df_all) {
        v_max_date = max(p_dat$Date);vals <- p_dat %>% filter(Symbol == p_symbol & Date > v_max_date-(p_grph_prd)) 
        if (nchar(vals$Date[1]) == 8){
          vals$Date <- as.Date(as.character(vals$Date), '%Y%m%d')
        } else{
          vals$Date <- as.Date(vals$Date) }
        names(vals)[names(vals) == 'Vol'] = 'Volume'
        ts <- xts(vals %>% select(Open, High, Low, Close, Volume),
                  order.by = vals %>% pull(Date))
        candleChart(ts, name = p_symbol, type = "auto", up.col = "green", dn.col = "red", theme = "white", plot = TRUE, TA = c(addVo()))
      }
    library('rmarkdown')
    v_rmd_file = '/path/MainStackoverflow.RMD'
    v_output_file = '/path/Output.html'
    rmarkdown::render(v_rmd_file,output_file = v_output_file_html, output_dir = v_output_dir)

#=========================================================
# **MainStackoveflow.RMD File**

```{r message=FALSE, warning=FALSE}
```
--- 
title: "Test" 
output:
  html_document: 
  css: styles.css
  pdf_document: default
--- 
```{r setup, include=FALSE, echo=FALSE, , message=FALSE, warning=FALSE, out.width= 15 , cache = FALSE}
library(knitr)
library(kableExtra)
```
echo("one")
```{r, fig.cap = "Test Graphs", echo = FALSE}
if (1==1){
    kable(p_dt_hdr_fixed_file) %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed"), full_width = T, position = "center", font_size = 11)}
```

```{r, echo=TRUE}  
#print('Test')
#print(paste('after before knit expand --> ', length(v_par_list)))
rmd <- sapply( 
  1:length(v_par_list), 
  function(x) { 
    knit_expand("DetailStackoverflow.RMD", x=x, p_Symbol=v_par_list[[x]]$Symbol)
  } 
) 
rmd <- paste(rmd, collapse = "\n") 
```
```{r results = "asis", echo=FALSE} 
rendered <- knit(text = rmd, quiet = TRUE) 
cat(rendered, sep = "\n") 
```
#===================================================
**DetailStackoverflow.RMD file**
```{r message=TRUE, warning=TRUE}
```
##### {{paste(p_Symbol,'-----' )}}
style="padding:0px;"
```{r, fig.cap = "The caption: ID = {{p_Symbol}}", fig.width=10,fig.fullwidth=TRUE,echo = FALSE, results = 'asis', warning = FALSE , cache = FALSE}
i <- {{x}} 
v_Symbol        = v_par_list[[i]]$Symbol
cat("
<style>
caption {
      color: black;
      font-weight: bold;
      font-size: 1.0em;
    }
</style>
")
#print(v_company)

```
```{r, fig.cap = "Yearly Graphs",fig.width=10,fig.fullwidth=TRUE,fig.height=5, echo = FALSE,fig.align='center', cache = FALSE}
#| column: page
func_plot_nyrs_data_test(2,v_Symbol)
func_base_make_candle_chart_new_test(v_Symbol,v_glbl_shrt_rpt_prd)
```

enter image description here

r r-markdown
1个回答
0
投票

四开

如果使用四开本,可以使用

column
选项。所有需要更宽边距的内容都可以使用
column
选项放入受围栏的 div 内。请参阅文档了解更多选项。

main.qmd 或 main.Rmd 使用 Quarto 处理

:::{.column-page}
YOUR CODE AND TEXT HERE
:::

R Markdown 和 Knir

按照 this SO 答案,还可以使用自定义 CSS 以及主 .Rmd 文件的 YAML 中的引用。

自定义.css

div.main-container {
  max-width: 1600px !important;
}

主要.Rmd

---
title: asd
author: abc
date: "`r format(Sys.time(), '%d %B, %Y')`"
output:
  html_document:
    toc: true
    toc_float: true
    toc_depth: 6
    mathjax: null
    css: doc.css
---
© www.soinside.com 2019 - 2024. All rights reserved.