R Markdown 中未完全显示 Python 图

时间:2021-05-07 14:01:25

标签: r r-markdown reticulate

我正在使用 reticulate 使用 Python 和 R Markdown。

它真的很好用,但我有一个问题:

使用 Python (seaborn) 绘制的图未在我的 PDF 中完整显示,我不知道为什么。

这是它在 PDF 上的样子:

Python in R Markdown

(是的,我知道,热图没有意义,仅用于演示目的)。如您所见,行名和列名有足够的空间,但您没有完全看到它们。更改 fig.widthfig.height 并不会真正带来更好的结果。你知道我能做什么来保证显示整个图形吗?

这是我的完整代码:

---
output: 
  pdf_document:
    number_sections: true
lang: de
fontsize: 12pt
header-includes: 
  - \usepackage{float}
  - \pagenumbering{gobble}
---
knitr::opts_chunk$set(
  fig.height = 2,
  fig.width = 5,
  echo = TRUE,
  fig.align  = "center",
  fig.pos = "H",
  out.extra = "", 
  warning = FALSE,
  message = FALSE)
library(reticulate)

import seaborn as sns
import pandas as pd
data = pd.read_csv("gapminder_full.csv")
ct = pd.crosstab(index = data["continent"], 
                 columns = data["year"],
                 normalize = "index")
sns.heatmap(ct)

我不确定是 Python 还是 seaborn 的问题。我的印象是只有 ggplot 在 R Markdown 中确实可以正常工作……您可能有更一般的想法?

1 个答案:

答案 0 :(得分:0)

我有个提示:

绘图保存在文件夹 ..._files/figure-latex 和一个单独的 pdf 文件中,并且该文件中的绘图不完整。 所以我设置了 plt.subplots(figsize=(10,6)) 并且一切都更好但并不完美......