如何解决当输入包含空格时,Eval解析意外符号
我正在构建一个闪亮的应用程序,用户可以在其中根据自己的喜好动态更改线图的颜色。为此,我使用以下函数来生成折线图:
create_line<-function(data,filter,x,y,colour,shape,size,alpha){
cols <- paste0("c(",paste0("input$col",sort(filter),collapse = ","),")")
cols <- eval(rlang::parse_expr(cols))
req(length(cols) == length(filter))
data %>%
ggplot(aes(x=x,y=y,colour=colour))+
geom_point(shape=shape,size=size,alpha=alpha)+ geom_line()+
generate_theme()+
scale_colour_manual(values = cols)}
output$plot1 <- renderPlotly({
create_line(data(),# data
input$producer,# filter
data()$date,# x-axis
data()$total,# y-axis
data()$content_producer,# colour
21,0.8,0.8)}) # shape,alpha
由此data()对用户可以输入的数据(例如日期范围和content_proucer)起反应。用户可以更改输入的颜色(在这种情况下为过滤器),并且当输入不包含空格时,它可以正常工作。例如,如果输入为“ Main Road”,则不起作用(并给出意外的符号错误),但如果输入为“ MainRoad”,则它起作用。有没有办法在不实际删除输入空间的情况下完成这项工作?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。