gpt4 book ai didi

r - 为什么我在 chartJSRadar() 之后调用 legend() 得到 "plot.new has not been called yet"

转载 作者:行者123 更新时间:2023-12-04 11:28:31 24 4
gpt4 key购买 nike

这里的上下文是用于统计计算的 R 项目

考虑以下代码(来自 chartJSRadar 文档)

library(radar chart)
labs <- c("Communicator", "Data Wangler", "Programmer",
"Technologist", "Modeller", "Visualizer")

scores <- list(
"Rich" = c(9, 7, 4, 5, 3, 7),
"Andy" = c(7, 6, 6, 2, 6, 9),
"Aimee" = c(6, 5, 8, 4, 7, 6)
)

chartJSRadar(scores = scores, labs = labs, maxScale = 10)

我想在使用中加上一个图例:

legend("topleft", c("Rich","Andy","Aimee"), cex=0.8, fill=colors)

但是我得到以下错误:

Error in strwidth(legend, units = "user", cex = cex, font = text.font) : 
plot.new has not been called yet

我已经看到许多关于此错误消息的其他问题。其中一些是因为图例坐标超出了图表。其他一些人提供了解决方法,但没有解释为什么会发生错误。

我的问题是:为什么会出现此错误?这似乎是一些根本性的错误,比如 legend() 和 chartJSRadar() 之间的不兼容,但我不明白。

请指教!

最佳答案

如果使用 R Studio,请确保运行整个 block (而不是 ctr + enter)。我在使用 igraph 时遇到了类似的问题。我试图将图例附加到图表上,但出现了相同的错误消息。运行整个 block 有效。

关于r - 为什么我在 chartJSRadar() 之后调用 legend() 得到 "plot.new has not been called yet",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36449864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com