2014-06-21 89 views
8

我正在使用RStudio版本0.98.507。关于初始工作仪器的简短信息:编码在闪亮

R version 3.1.0 (2014-04-10) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 

locale: 
[1] LC_COLLATE=German_Germany.1252 LC_CTYPE=German_Germany.1252 
[3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C     
[5] LC_TIME=German_Germany.1252  

other attached packages: 
[1] shinyapps_0.3.53 RJSONIO_1.2-0.2 shiny_0.9.1.9013 

loaded via a namespace (and not attached): 
[1] bitops_1.0-6 Cairo_1.5-5  caTools_1.17 digest_0.6.4 
[5] htmltools_0.2.4 httpuv_1.3.0 Rcpp_0.11.1  RCurl_1.95-4.1 
[9] shinysky_0.1.2 tools_3.1.0  xtable_1.7-3 

我在闪亮的服务器上部署闪亮的应用程序时遇到问题。问题在某种程度上解决了,但在它再次出现之后。现在我无法再修复它了。我的问题是帮手中的德文字母.R。不幸的是,我无法避免使用它们。像显示和闪亮教程教导我的,我的采购我的帮助scrpits helpers.Rserver.R。 我所有的R脚本都以UTF-8格式谨慎保存。我不能使用命令

options(encoding="UTF-8") 

因为在执行它之后,命令deployApp(“app”)不起作用。我设置位置使用

Sys.setlocale(category = "LC_ALL", locale = "German") 

它也行不通。 我不明白,为什么mainPanel侧边栏布局中的字母是可读的,但是那些来自helpers.R没有。有人能帮我解决这个悖论吗?

ui.R

library(shiny) 

shinyUI(fluidPage(withMathJax(), 
        titlePanel("Währung"), 

        sidebarLayout(position="right", 
           sidebarPanel(
             h5("Bedienfenster"), 
             sliderInput('x', 'x axis', 
                value=50, min=3, max=150, step=1,) 
           ), 

           mainPanel(
             plotOutput("Plot") 
           ) 
       ) 
)) 

server.R

shinyServer(function(input, output){ 
     output$Plot <- renderPlot({ 
       x <- rnorm(input$x) 
       hist(x, main="", xlab="", ylab="") 
       title(main="Schätzgerade", xlab="Währung", ylab="Dichte") 
     }) 
}) 

部署我获得以下app后。

+1

您是否尝试在'source()'命令中设置'encoding ='参数? – MrFlick

+0

当然,它具有相同的效果,如'opitions(encoding =“UTF-8”)' –

+1

那么它似乎并不表示您对问题的描述足以让其他人重现。这会让你很难进一步帮助你。你能把一个最小的工作例子放在一起,让其他人可以跑来体验相同的行为吗? – MrFlick

回答

4

作为解决方法(我没有测试过),您是否尝试过使用转义的Unicode字符,如"W\u00E4hrung"而不是"Währung"?您可以通过?Quotes找到如何执行此操作的详细信息,并且在http://en.wikipedia.org/wiki/List_of_Unicode_characters处有一个Unicode字符列表。

+0

这是问题的绝妙解决方案!如果没有其他答案出现,我会再等两天,你会得到+50分!非常感谢! –

1

什么工作对我来说是改变文件的编码(在Rstudio文件>重提编码开放),并设置编码:

  • UTF-8 ui.R
  • WINDOWS-1252 server.R和global.R

我不知道原因,但它为我做了诡计。

+0

不幸的是,它不适用于我的情况。 –

+0

当发布0.10.1时(希望在几天内),这将不起作用。这些R脚本必须以UTF-8编码。 –

+0

@易辉在'shiny_1.0.2'中工作。 –

1

闪亮0.10.1已经发布在CRAN,所以才install.packages('shiny')。请忽略下面的答案。


直到最近我们还没有真正开始研究Windows下的Unicode问题。现在的问题应该得到解决,你可以尝试从这里安装最新开发版本:

devtools::install_github('rstudio/shiny') 

我们计划出货闪亮0.10.1将很快发布,所以如果可以的话,我们将不胜感激帮助我们测试它。基本上所有你需要做的就是确保ui.R和server.R使用UTF-8编码。您无需设置options(encoding = 'UTF-8')或将ä设为\u00E4