gWidgets根据窗口大小缩放图

时间:2013-07-11 22:04:59

标签: r gwidgets

我尝试创建一个包含两个ggraphics元素的GUI,其中包含两个图。 除了gwindow调整大小后缩放图形外,一切正常。

我想知道问题在于我创建ggroups的方式,或者最终是否有可能。

我知道我可以为绘图的大小设置绝对参数,但是,出于可用性的原因,如果它随着GUI窗口的大小(例如正常绘图)进行缩放会很好。

这是一个工作示例代码:

require(gWidgets)
options('guiToolkit'='RGtk2')

window = gwindow("Test")

#The main group...
main_group = ggroup(horizontal = T, container = window)

#...including two groups (left and right)
left_side = ggroup(horizontal = F, container = main_group)
right_side = ggroup(horizontal = F, container = main_group)

#Something on the left
test_frame = gframe("Foo", container = left_side)
another_frame = gframe("bar", container=left_side)


#the two horizontally aligned plots on the right
plot1 = ggraphics(container=right_side)
dev1 = dev.cur();
plot2 = ggraphics(container = right_side)
dev2 = dev.cur();


Sys.sleep(0.5) # avoiding alignment errors
plot(rnorm(100,2))
dev.set(dev1)
plot(rnorm(100,2))

但是,当只使用一个图时,它似乎至少垂直缩放而不是水平缩放。

1 个答案:

答案 0 :(得分:1)

我刚刚在gWidgets doc ...

中找到了expand参数

所以使用

right_side = ggroup(horizontal = F, container = main_group, expand = T)

而不是

right_side = ggroup(horizontal = F, container = main_group)

做了这个伎俩。