2011-11-04 18 views
18

Kullanıcıdan birkaç girdiyi (örneğin, cinsiyet, yaş ve tıklanabilir kategoriler olarak yarış) alan GUI oluşturmayı, ardından her girişe bir kullanıcı kimliği atar (GUI'de çıktı olarak görüntülenir)). Başlık altında GUI'nin bu kullanıcı girişi ile oluşturduğu bir veri kümesi olacaktır (Bu örnekte, 4 değişken olacaktır: kullanıcı kimliği, cinsiyet, yaş ve yarış).Özelleştirilmiş GUI'leri oluşturmak için hangi R paketi veya kodu kullanılabilir?

Daha önce böyle bir GUI oluşturmuş olan var mı? Herhangi bir R paketi veya kod önerisi?

Teşekkürler!

+0

Bu soru, SO'da iyi, tam yanıtlar almak için olasıdır. – whuber

+0

Web tabanlı GUI'ler, ör. Apache modülleri var mı - yoksa R'ye çok bağlı bir GUI ile ilgileniyor musunuz? – Iterator

+1

Bu konuda, web tabanlı anketler için uygunsa, orada bazı iyi sistemler var ve böyle standart anket sistemlerinin çıktılarını analiz etmek için iyi bir R yazılımı var. Size kalmış, sadece ihtiyaçlarınızı açıklığa kavuşturmak istiyorum. – Iterator

cevap

12

Bunu yapmanın birçok yolu vardır. İşte gWidgets eklenti paketini kullanarak. RGtk2 veya tcltk arka uçlarıyla çalışmalıdır.

library(gWidgets) 
items <- data.frame(id=numeric(0), gender=character(0), age=numeric(0), race=character(0), stringsAsFactors=FALSE) 
genders <- c("Male", "Female") 
race <- c("Black", "Hispanic", "Other") 

w <- gwindow("Capn's GUI", visible=FALSE) 
g <- ggroup(cont=w, horizontal=FALSE) 
lyt <- glayout(cont=g) 
lyt[1,1] <- "Gender:" 
lyt[1,2] <- gradio(genders, cont=lyt) 

lyt[2,1] <- "Age:" 
lyt[2,2] <- gedit("40", coerce.with=as.numeric, cont=lyt) 

lyt[3,1] <- "Race:" 
lyt[3,2] <- gcombobox(race, selected=0L, cont=lyt) 

lyt[4,2] <- gbutton("Add", cont=lyt, handler=function(h,...) { 
    vals <- lapply(lyt[1:3, 2], svalue) 
    id <- nrow(items) + 1     # or roll your own 
    items[id, ] <<- c(id, vals) 
    tbl[] <- items 
}) 
gseparator(cont=g) 
tbl <- gtable(items, cont=g) 


visible(w) <- TRUE 
7

RStudio'nun üstünde yeni bir çözüm yapısı var. Bu useR2011 sunuldu, burada posterde bir bağlantıdır:

denedim başka güzel bir seçenek JavaFX, http://docs.oracle.com/javafx/2/overview/jfxpub-overview.htm kullanarak bir GUI oluşturmaktır http://www.calvin.edu/~rpruim/talks/MosaicLightning/images/mosaicManipulate-poster.pdf

+0

Rstudio olmayan kullanıcılar için, gWidgetsManboard'u, Tal'ın işaret ettiği şekilde kullanabilirsiniz. Bu paket şu anda krank değil, şu an için geçerli: https://r-forge.r-project.org/R/?group_id=761 – jverzani

+0

@jverzani gWidgetsManipulate'ın kaderi nedir? GWidgets2'ye mi taşındı? Sanırım CRAN'de olmayan bir RSTudio manipülasyon benzeri bir pakete sahip olmak güzel olurdu. – landroni

+0

Burada bir örnek var: https://github.com/jverzani/gWidgets2/blob/master/inst/examples/manipulate.R – jverzani

0

ve JavaFX GUI, sadece, JRI, http://rforge.net/JRI/ kullanmak Java içinde R kullanmanıza olanak sağlayacak.

İlgili konular