R语言 错误:您是否拼错了`ggplot()`中的`data`参数[已关闭]

mbjcgjjk  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(207)

**已关闭。**此问题是not reproducible or was caused by typos。目前不接受答案。

这个问题是由一个错字或一个无法再重现的问题引起的。虽然类似的问题可能在这里是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
14小时前关闭
Improve this question
我想在夸托中简单地可视化一个图,但总是得到一个我不明白的错误。当我运行qmd文件时,我在这个块中得到一个错误:

ggplot(df, aes(x = X, y = Y)) +
  geom_bin2d(binwidth = c(5, 5)) +
  stat_bin2d(geom = "text", aes(label = ..count..), size = 2, binwidth = c(5, 5)) +
  scale_fill_gradient("Aantal schoten", low = "yellow", high = "red") +
  annotate_pitch(alpha = 0) +
  direction_label(x_label = 50) +
  theme_pitch() +
  theme(legend.key=element_blank())

字符串
错误:

Error in `ggplot()`:
! `data` cannot be a function.
ℹ Have you misspelled the `data` argument in `ggplot()`
Backtrace:
 1. ggplot2::ggplot(df, aes(x = X, y = Y))
 2. ggplot2:::ggplot.function(df, aes(x = X, y = Y))
                                                                                                             
Execution halted


我检查了我的全局环境,没有名为data的变量,这可能是问题所在。当我运行一个简单的类似文件时,没有像这样的错误:

---
title: "test"
---

```{r}
library(ggplot2)
library(dplyr)
iris %>%
  ggplot(aes(x = Sepal.Length, y = Sepal.Width)) +
  geom_point()
型
所以我不明白为什么这个错误总是发生。我也尝试在`ggplot`函数中使用`data = df`,但这不起作用。此外,当逐块运行代码时也有效。错误只在渲染文件时发生。那么有人知道为什么会发生这个错误吗?
k4aesqcs

k4aesqcs1#

这可能是因为您的data.frame的实际名称不是df,或者您在全局环境中创建了一个df变量,而不是在夸托环境中。
注意,使用df作为data.frame的名称并不是一个好主意,因为df()是R中用于F分布密度的内置函数(因此使用函数的错误)。
如果代码仅在编译时出错,则您可能没有在夸托文档本身中导入数据。文档是在全新的环境中呈现的;因此全局环境中的任何数据都不可用于文档。您需要确保夸托文档是自给自足的;也就是说,确保.qmd文件中包含用于加载数据的read.table或等效函数。

相关问题