首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以访问DescTools::Desc()生成的绘图对象吗?

可以访问DescTools::Desc()生成的绘图对象吗?
EN

Stack Overflow用户
提问于 2020-10-09 11:06:52
回答 1查看 100关注 0票数 1

我使用DescTools中的Desc()来描述rmarkdown PDF文档中的一些变量。问题是,它生成了3幅图,在我编织文档时保持一致,从而裁剪图像。

示例:

代码语言:javascript
复制
dates <- sample(seq(as.Date('1999/01/01'), as.Date('2021/01/01'), by="day"), 1000)

results <- DescTools::Desc(dates)

results

输出包含3幅图。我可以使用results[1]中的列表找到单独的响应,但是我找不到绘图对象,我认为这可能是将其中一个放在另一个下面的一种方法。

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-09 12:27:18

results中没有绘图对象。

相反,当您在控制台中键入results时,它会调用S3泛型print,而后者又会分派print.Desc方法。默认情况下,print.Desc将根据results的“类”成员调用绘图函数,在您的示例中,该成员是"Date"。如果在控制台中键入DescTools:::plot.Desc.Date,则每次打印results时都会看到实际生成绘图的函数。

所以没有情节对象。有创建绘图的数据,每当您将results打印到控制台时,绘图函数的调用就会创建这些绘图图。

Desc绘图函数似乎很少有允许修改的选项,所以最好的选择可能是使用results中的数据来创建自己的绘图。如果您希望看到results的内容没有这些情节,只需键入:

代码语言:javascript
复制
print(results, plotit = FALSE)

如果你想一次一个地画三个地块,你可以:

代码语言:javascript
复制
DescTools:::plot.Desc.Date(results[[1]], type = 1)

代码语言:javascript
复制
DescTools:::plot.Desc.Date(results[[1]], type = 2)

代码语言:javascript
复制
DescTools:::plot.Desc.Date(results[[1]], type = 3)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64278815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档