【问题标题】:Can't use either View() or edit() functions, getting "Error in .External2(C_dataviewer, x, title) : invalid device" error message无法使用 View() 或 edit() 函数,出现“.External2(C_dataviewer, x, title) 中的错误:无效设备”错误消息
【发布时间】:2013-09-25 15:38:57
【问题描述】:

我在 Mac OSX Snow Leopard 系统中通过终端运行 R。

我在尝试使用 View() 时收到此错误消息:

.External2(C_dataviewer, x, title) 中的错误:无效设备 In 另外:警告消息:1:在视图(a)中:不支持的语言环境 Xlib:一些 X 操作将在 C 语言环境中运行 2:在 View(a) 中:X 无法设置 语言环境修饰符 3:在 View(a) 中:无法创建字体集 --fixed-medium-r----120------

在尝试使用edit() 时出现此错误消息:

.External2(C_dataentry,datalist,modes)中的错误:无效设备 另外:警告消息:1:在edit.data.frame(a)中:区域设置不 Xlib 支持:一些 X 操作将在 C 语言环境 2 中运行:在 edit.data.frame(a) : X 不能设置语言环境修饰符 3: In edit.data.frame(a) : 无法创建字体集 --fixed-medium-r----120------

我找不到有关此特定问题的信息。我该怎么做才能解决这个问题?

sessionInfo() 返回:

R version 3.0.1 (2013-05-16)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale:
[1] C/UTF-8/C/C/C/C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

【问题讨论】:

  • sessionInfo() 说什么?这相关吗? stackoverflow.com/questions/8808069/…
  • @doctorlove 我认为这无关紧要。他的错误信息与字体有关,而我的错误信息与“无效设备”有关。我会将 sessionInfo() 添加到原始帖子中。
  • 我很确定问题是无法创建字体集。我无法在我的 Snow Leopard 盒子上重现这一点,但我会继续研究。
  • 您可以尝试从同一提示符运行 xterm 吗?
  • @AlanShutko 如果我按照建议修改 .bashrc(或 .profile),错误消息会消失,但 View() 和 edit() 调用什么也不做,R 变得无响应。

标签: r


【解决方案1】:

问题可能出在您的区域设置上。从终端运行命令 'locale' 并查看是否有除 'C' 语言环境之外的其他行。例如,在我的例子中,输出是这样的:

macbook:foo user$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

解决此问题的最简单方法是将语言环境设置为 C,仅用于 R 进程,即。使用命令“LC_CTYPE=C R”从终端会话运行 R,而不仅仅是“R”。至少在 OS/X 10.6.8 上,这消除了错误消息并允许 R 显示编辑窗口。

【讨论】:

  • 所以这是 R 中的一个错误? (显然应该支持 C 以外的语言环境……)
【解决方案2】:

我的问题的原因:在我们加载数据的 rchunk 中查看(数据集)。

我把它放在这里是因为我加载了像 data

【讨论】:

    【解决方案3】:

    使用 RStudio Server 体验过。我只需要重新启动 R (Ctrl/Cmd + Shift + F10) 即可消除错误。

    可能是更新了一些包造成的。

    【讨论】:

      【解决方案4】:

      如果您下载 xquart,我认为您需要重新启动 Mac 以激活其工作。 几分钟前我遇到了同样的问题,我重新启动了我的 Mac,现在它可以工作了。

      【讨论】:

        【解决方案5】:

        我在 RStudio 中遇到了同样的错误。我不确定这是否与通过终端使用 R 相同,但对于使用 jagsUI 包收到此消息的 RStudio 用户来说,会屏蔽触发此警告的 View 函数。见this question

        最简单的解决方法似乎是在您使用完 JAGS 后致电 detach("package:jagsUI", unload = TRUE)

        通过调用conflicts(detail=TRUE)检查函数之间的潜在冲突(取自this answer,用于查找哪些函数在R中被屏蔽)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-06-08
          • 1970-01-01
          • 1970-01-01
          • 2017-05-13
          • 2013-10-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多