Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R Bookdown中图形标题后的大空格?_R_Latex_R Markdown_Knitr_Bookdown - Fatal编程技术网

R Bookdown中图形标题后的大空格?

R Bookdown中图形标题后的大空格?,r,latex,r-markdown,knitr,bookdown,R,Latex,R Markdown,Knitr,Bookdown,我似乎无法控制数字标题后的空格数 对于两段(在我看来)完全相同的代码,一段放在标题后面,紧接着是文本,而另一段在我想要的文本出现之前,标题后面有大约半页的空白 在第二幅latex的图中,为什么第一个代码块在标题后给出了一个几乎为空的页面,而第二个代码块后面紧跟着后续的文本呢 这是我的索引的一部分。rmd(减去标题等)-这可能与linestretch有关吗 header-includes: - \usepackage{float} #use the 'float' package - \f

我似乎无法控制数字标题后的空格数

对于两段(在我看来)完全相同的代码,一段放在标题后面,紧接着是文本,而另一段在我想要的文本出现之前,标题后面有大约半页的空白

在第二幅latex的图中,为什么第一个代码块在标题后给出了一个几乎为空的页面,而第二个代码块后面紧跟着后续的文本呢

这是我的索引的一部分。rmd(减去标题等)-这可能与linestretch有关吗

header-includes: 
- \usepackage{float}  #use the 'float' package
- \floatplacement{figure}{H} #make every figure with caption = H
output:
  bookdown::pdf_book:
    fig_caption: yes
    fig_crop: false
    df_print: kable
    includes:
      in_header: preamble.tex
    latex_engine: xelatex
    keep_tex: yes
fontsize: 11pt
linestretch: 1.5
toc-depth: 1
secnumdepth: 1
lof: True
lot: True
site: bookdown::bookdown_site
documentclass: book
classoption: openany
bibliography: [packages.bib, book.bib]
biblio-style: apalike
link-citations: True
geometry: "left=2.5cm, right=2.5cm, top=2.5cm, bottom=2.5cm"
---
mybookdown.yml

book_filename: "_Project2019"
delete_merged_file: true
before_chapter_script: "script1.R"
rmd_files: ["index.Rmd", "01-intro.Rmd", "02-EDA.Rmd", "03-method.Rmd"]
documentclass: book
language:
  label:
    fig: "Figure"
    tab: "Table"
bookdown::pdf_book:
  latex_engine: xelatex
  citation_package: natbib
  keep_tex: yes
  fig_width: 6
  fig_height: 4.5
  fig_crop: false
  fig_caption: true
  df_print: kable
和myoutput.yml

book_filename: "_Project2019"
delete_merged_file: true
before_chapter_script: "script1.R"
rmd_files: ["index.Rmd", "01-intro.Rmd", "02-EDA.Rmd", "03-method.Rmd"]
documentclass: book
language:
  label:
    fig: "Figure"
    tab: "Table"
bookdown::pdf_book:
  latex_engine: xelatex
  citation_package: natbib
  keep_tex: yes
  fig_width: 6
  fig_height: 4.5
  fig_crop: false
  fig_caption: true
  df_print: kable
此外,我将此用作我的序言.tex,其中所有\let\origfigure行都只是一个解决方案,以使fig.pos=“h”在刚才我在这里看到的一致工作

\usepackage{booktabs}
\usepackage[none]{hyphenat}
\usepackage{float}
\usepackage[belowskip=-5pt,aboveskip=0pt]{caption}
\let\origfigure\figure
\let\endorigfigure\endfigure
\renewenvironment{figure}[1][2] {
    \expandafter\origfigure\expandafter[H]
} {
    \endorigfigure
}
\pagestyle{plain}
我已经尝试过添加标题包,其belowskip=-5pt,如您在本文中看到的。我也已经尝试了大量在每个块之前/之后没有空格的组合,但它看起来确实是随机的-在代码块本身中是否有我遗漏的选项?我被卡住了

我真的不知道如何使这个问题可以复制,所以我为此道歉,任何想法都让我知道

提前感谢,

詹姆斯

我建议将
\floatplacement{figure}{H}
更改为
\floatplacement{figure}{htbp}
。这将使latex有更多的可能为图像找到合适的位置


目前,一页上根本没有足够的空间来放置两个图形,但由于放置浮动的选项有限,tex剩下的唯一解决方案是插入空白,因为不允许有效地将图像浮动到合适的位置

作为测试,您可以更改
\floatplacement{figure}{H}
\floatplacement{figure}{htbp}
?我的怀疑是,一页上没有足够的空间来放置两个图形,但由于您放置浮动的选项有限,tex剩下的唯一解决方案是插入空白,因为不允许将图像有效浮动到合适的位置place@samcarter谢谢这就解决了我所有的图形的问题,除了一个现在占据了整个页面的图形,这个图形看起来错位了,既不是垂直居中,也不是水平居中。可能是图像周围有过多的空白,因此太大而无法将其放置在正常文本中吗?@samcarter我相信这与此有关,要么更改块命令的out.width部分,要么缩小尺寸,将其放置在应该的位置!无论
\floatplacement
的设置如何,在放置任何文本之前,是否有一个简单的技巧来减少图形标题后的空间量?在我以PDF格式呈现的bookdown报告中,每个fig标题后都有2厘米的空间,最好将其减小到1或1.5厘米。非常感谢@mavericks如果您使用的是
标题
软件包,您可以调整
下面的kip
。类似于
\captionsetup*[figure]{belowskip=..}
的内容。非常感谢,这非常有帮助!对于其他人,提供有关
\captionsetup
的更多信息。