RStudio로 부담없이 LGTM
프로세스로서 일련의 처리를 실행하는 것이 가능하거나, 인터랙티브하게 R 오브젝트의 조작을 할 수 있거나, 지금까지 없었던 새로운 기능으로 즐길 수 있을 것 같습니다. 자세한 것은 RStudio의 공식 페이지 를 봐 달라고 한다고 해서, 이번은 타이틀대로, RStudio로 LGTM 화상을 출력한다, 라고 하는 이야기가 됩니다.
동작 예
무엇이든 여기를 참조하십시오.
재미 있습니다.
이번에는 Shiny Gadgets로 만들었습니다. RStudio Addins를 배포하려면 패키지로 묶어야 하지만, 단순히 호출하면 다음 코드를 복사하여 일반 함수를 실행하면 됩니다. LGTM하고 싶을 때는 꼭 시도하십시오.
R 코드
# 必要なパッケージを読み込む
library(shiny)
library(shinygadgets)
library(rstudioaddins)
# 関数を定義する
rlgtm <- function(user = NULL, height = 400) {
# 画像用に一時ファイルを作成
tmpf <- tempfile()
# LGTM画像のURLを取得
# ユーザー名を指定した場合、ユーザーのお気に入りからランダムにLGTM画像を表示
image_url <- ifelse(is.null(user), "http://lgtm.in/g", paste("http://lgtm.in/g", user, sep = "/")) %>%
xml2::read_html() %>%
rvest::html_nodes(css = "form input") %>%
extract(1) %>%
rvest::html_attr("value")
image_ext <- tools::file_ext(image_url)
# URLからファイルをダウンロード
download.file(url = image_url,
destfile = paste(tmpf, image_ext, sep = "."),
quiet = TRUE)
# 画像サイズを変更
image <- paste(tmpf, image_ext, sep = ".") %>%
webshot::resize(paste0("x", height))
# Shiny の部分
ui <- imageOutput("image")
server <- function(input, output, session) {
output$image <- renderImage({
list(src = image, height = height)
})
}
# Viewerの起動。paneViewer()関数で出力時のviewerのサイズ(最低の高さ)を指定
runGadget(ui, server, viewer = paneViewer(height))
}
# 関数の実行
rlgtm()
# ユーザー名を指定して実行
rlgtm(user = "uribo")
메커니즘
간단합니다.
LGTM 이미지를 htp //lgtm. 응에서 가져옵니다. 출력하는 LGTM 화상은 무작위로 한 장 표시하는 페이지 로부터 선택하도록 한다.
webshot::resize()
로 이미지의 크기(높이)를 변경했습니다. 초기값으로 400px로 설정.paneViewer()
에서의 minHeight 인수가 되므로, viewer 를 작게 해도 확대되게 된다. LGTM!
Reference
이 문제에 관하여(RStudio로 부담없이 LGTM), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/uri/items/dc3937e9efdeed1ea661텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)