在R中用gbutton事件显示qmap

时间:2014-07-30 19:12:10

标签: r ggmap gwidgets

我已经被困在这个问题上一段时间了,我真的希望有人能伸出援助之手。我试图做的似乎相对简单,但由于某种原因我无法让它工作。我正在尝试将ggmap包中的函数qmap与gwidget2包中的gbutton相关联,这样如果我在一个窗口中按下按钮,我就可以在不同的窗口中启动地图的制作。我在这里看到的最接近的答案涉及使用可见的< - 命令引起对ggraphic的注意 - 这似乎没有帮助。如果我只是在命令提示符中发出生成地图的命令:

QMAP( '加州')

我得到的地图没有问题,只要我定义图形设备正确的位置,但如果我尝试通过按钮按下事件处理来做到这一点,我什么也得不到...这里有一些代码来帮助说明我的问题

require(gWidgets2RGtk2)
require(gWidgetsRGtk2)
require(gWidgets2)
require(cairoDevice)
require(ggmap)
require(ggplot2)
require(rgdal)
require(maptools)

w1 <- gwindow()
w2 <- gwindow()

g1 <- ggroup(cont=w1)
g2 <- ggroup(cont=w2)

b1 <- gbutton('Click Me',cont=g2)

gr1 <- ggraphics(cont=g1)

button_press <- addhandlerchanged(b1,  handler=function(h,...) { 
    qmap('California')
    })

1 个答案:

答案 0 :(得分:0)

根据评论中的建议,您需要:

button_press <- addhandlerchanged(b1,  handler=function(h,...) { 
    print(qmap('California'))
})