gpt4 book ai didi

r - 如何通过使用 'fileInput' 函数绘制 ggplot 来提供上传的数据?

转载 作者:行者123 更新时间:2023-12-04 10:21:54 26 4
gpt4 key购买 nike

我正在尝试开发一个 shiny app在其中我为用户提供了上传数据文件(CSV 或 txt)的选项。然后我想渲染一个 ggplotplotly从这个数据。该数据集中有各种列。因此,我需要渲染各种绘图,它们将由用户选择该数据集中的列作为 x 轴数据和 y 轴数据来呈现。我为用户提供了选择 x 和 y 轴数据列的选项。但是,当我输入用户选择的数据列进行绘图时,输出不显示任何图形。
我的 plotly 代码:

df <- mtcars
ggplot(df, aes(x, y)) +
geom_point(aes(color='blue'))
我应该使用 aesaes_string从上传的数据呈现列?

最佳答案

我有一段时间有这个确切的问题,试图以 Shiny 的方式显示一个 plotly 。考虑到您可能让用户选择 selectInput下拉选择列,对吗?这将向您的 ggplot 发送一个字符串 (chr)职能。

通常,您使用 aes()选择美学,但这不适用于字符串。为此,您需要 aes_string() .它的使用方式与 aes() 完全相同,但所有调用都是字符串。 See documentation for information .

所以如果你的 ggplot电话是:

ggplot(myData, aes(x=something, y=somethingElse)) +
geom_point(aes(color=prettyColors))

数据集中的列 myData是“something”、“somethingElse”和“prettyColors”,然后使用 aes_string() ,您可以使用以下方法创建相同的图:
ggplot(myData, aes_string(x="something", y="somethingElse")) +
geom_point(aes_string(color="prettyColors"))

关于r - 如何通过使用 'fileInput' 函数绘制 ggplot 来提供上传的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60814883/

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