將您的R shiny應(yīng)用程序提升到新的水平 - 我們的開(kāi)源概述
在Appsilon,在為我們的客戶開(kāi)發(fā)項(xiàng)目時(shí),我們經(jīng)常遇到經(jīng)常性的挑戰(zhàn)。這促使我們創(chuàng)建簡(jiǎn)化開(kāi)發(fā)過(guò)程的解決方案 - 使我們的日常工作更加高效。這些通常都是作為內(nèi)部工具開(kāi)始的,但我們不希望將這些優(yōu)秀的軟件包保留給我們自己!這就是為什么我們與社區(qū)分享它們 - 所以每個(gè)人都可以受益。
我們經(jīng)常使用R Shiny,我們喜歡它。這就是為什么我們的開(kāi)源主要圍繞改善Shiny的體驗(yàn),這是一個(gè)很好的工具,雖然它本身有時(shí)缺乏一些功能 - 這就是需要我們開(kāi)展研究的地方。
我想通過(guò)概述軟件包以及更詳細(xì)地探索它們的資源向您介紹我們的開(kāi)源軟件。通過(guò)這種方式,您可以快速確定其中是否有對(duì)您有用的東西(我敢打賭)。
要從本文中描述的軟件包中受益,您應(yīng)該具備R的Shiny軟件包的一些工作知識(shí)。如果您不了解 Shiny,可以參考此頁(yè)面查看它的內(nèi)容。
現(xiàn)在,讓我們開(kāi)始吧!
SHINY.SEMANTIC

我們?yōu)槭裁匆獎(jiǎng)?chuàng)建?
您是否厭倦了使用Shiny創(chuàng)建的應(yīng)用程序的視覺(jué)風(fēng)格? 我們的軟件包允許您將無(wú)聊的標(biāo)準(zhǔn)Shiny應(yīng)用程序轉(zhuǎn)換為具有清新和交互式設(shè)計(jì)的現(xiàn)代應(yīng)用程序。
什么是shiny.semantic?
簡(jiǎn)而言之,它是一個(gè)庫(kù),可以很容易地使用Semantic UI組件包裝Shiny。 它附加存儲(chǔ)在我們的CDN上的所有semantic外部文件,以提高加載速度。 該軟件包默認(rèn)包含許多流行的組件,但通過(guò)創(chuàng)建您可能需要的特定自定義組件來(lái)擴(kuò)展它并不困難。 為此,它為您的自定義用戶界面提供了通用的輸入綁定方法,使您可以創(chuàng)建各種類型的輸入。
準(zhǔn)備探索? 從CRAN獲取最新的穩(wěn)定版本
install.packages( “shiny.semantic”)
如果從GitHub安裝,您還可以嘗試開(kāi)發(fā)分支上的最新功能。
devtools :: install_github(“Appsilon / shiny.semantic”,ref =“develop”)
需要更多細(xì)節(jié)? 閱讀shiny.semantic博客文章或訪問(wèn)GitHub上的軟件包站點(diǎn)。
SEMANTIC.DASHBOARD

Semantic.dashboard是我們用于快速創(chuàng)建漂亮且可自定義的dashboard的軟件包。它也很容易使用。該語(yǔ)法與'shinydashboard'軟件包兼容,如果您在應(yīng)用程序中使用它,更改為我們的semantic.dashboard是一個(gè)明智的選擇。
為什么我需要dashboard?
如果您之前沒(méi)有使用dashboard作為應(yīng)用程序的基礎(chǔ),請(qǐng)嘗試一下。它允許您輕松構(gòu)建您的應(yīng)用程序,使其更加用戶友好。您可以在3個(gè)部分之間劃分UI - 標(biāo)題,導(dǎo)航側(cè)邊欄和用于顯示主要內(nèi)容的儀表板主體。使用我們的軟件包,您還可以使用一行代碼輕松測(cè)試不同的Semantic-UI主題。你可以在語(yǔ)義森林中找到一些。如果您需要更加靈活的樣式,您也可以根據(jù)自己的喜好自定義CSS。
使用一行代碼測(cè)試不同的語(yǔ)義UI主題
您可以使用一行代碼輕松測(cè)試不同的Semantic-UI主題。

在CRAN和我們的GitHub上都可以使用semantic.dashboard
欲了解更多信息,請(qǐng)?jiān)L問(wèn):semantic.dashboard
SHINY.ROUTER
Shiny.router是一個(gè)工具,可以幫助您向您的Shiny應(yīng)用程序引入U(xiǎn)RL路徑。

它能做什么?
此程序包提供了一種路由機(jī)制,可以分離應(yīng)用程序中的不同UI視圖,并允許您使用URL地址導(dǎo)航它們。 它還可以通過(guò)將代碼分成更小的代碼塊來(lái)編寫(xiě)更清晰的代碼。 更重要的是,您甚至可以為每個(gè)回調(diào)創(chuàng)建單獨(dú)的服務(wù)器端回調(diào)。 這樣,使用相同數(shù)據(jù)的視圖可以在每個(gè)選項(xiàng)卡中顯示不同的結(jié)果。 這為您提供了極大的靈活性。 此外,您將參數(shù)與URL地址一起傳遞到您的應(yīng)用程序,這樣就可以共享重定向到應(yīng)用程序中特定狀態(tài)的鏈接。
那不是全部!
除了使用瀏覽器中的地址欄進(jìn)行導(dǎo)航外,還可以使用路由鏈接,更改頁(yè)面,get_page或is_page等一組函數(shù)從應(yīng)用程序的服務(wù)器端操作路由。 所有這一切使它成為一個(gè)非常強(qiáng)大的工具,可以改善您的應(yīng)用程序開(kāi)發(fā)。 這將使您的應(yīng)用程序更上一層樓。
要開(kāi)始使用,請(qǐng)從R CRAN或我們的Github下載。
需要更多示例和說(shuō)明才能讓您前進(jìn)? 我推薦閱讀克里斯蒂安這個(gè)偉大的shiny.router帖子。
SHINY.I18N

shiny.i18n標(biāo)志
Shiny.i18n是一個(gè)允許您輕松創(chuàng)建多語(yǔ)言應(yīng)用程序的庫(kù)。它可以使您的應(yīng)用程序的翻譯實(shí)現(xiàn)任何語(yǔ)言的過(guò)程變得輕而易舉。
應(yīng)用內(nèi)翻譯 - 簡(jiǎn)單方法
i18n支持JSON或CSV格式的翻譯。您可以將所有語(yǔ)言和翻譯放在一個(gè)文件中,但如果需要,可以在每種語(yǔ)言的不同文件之間分隔語(yǔ)言。這允許您傳播翻譯過(guò)程,如果您要翻譯成多種語(yǔ)言,這可能是至關(guān)重要的。
翻譯后,使用該軟件包非常容易。您只需使用shiny.i18n界面將它們讀入您的應(yīng)用程序并圍繞您的表達(dá)式,這些表達(dá)式將使用翻譯器標(biāo)簽進(jìn)行翻譯。
翻譯后,使用該軟件包非常容易。您只需使用shiny.i18n界面將它們讀入您的應(yīng)用程序即可
從CRAN獲取它
或者Github。
有關(guān)詳細(xì)信息,您還可以參考Dominik的shiny.i18n博文。
shiny.i18n
SHINY.INFO

這是我們向Shiny系列推出的最新軟件包,應(yīng)該對(duì)使用Shiny應(yīng)用程序的開(kāi)發(fā)人員有用。
有用的圖標(biāo)就在附近??
shiny.info為開(kāi)發(fā)人員介紹了shiny應(yīng)用程序角落的簡(jiǎn)單診斷信息。 您可以顯示以下內(nèi)容:
在長(zhǎng)時(shí)間計(jì)算期間顯示的加載程序 - busy()
來(lái)自全局變量VERSION的應(yīng)用程序版本 - version()
帶品牌的盒子 - powered_by(“公司”,“#Link”)
Git信息 - git_info()
自定義消息或其他任何有助于您的開(kāi)發(fā) - 顯示(“一些診斷信息”)
請(qǐng)注意,此程序包仍處于初期階段,因此您可能會(huì)遇到問(wèn)題。
將來(lái)shine.info有什么可能?
我們計(jì)劃添加更多功能,例如:
更多UI樣式,例如 使用身份驗(yàn)證框調(diào)整為Shiny Server Pro。
檢查功能,以便在任何給定時(shí)間輕松調(diào)試和檢查應(yīng)用程序狀態(tài)。
自定義樣式框及其內(nèi)容的簡(jiǎn)便方法。
默認(rèn)情況下隱藏信息框并在按鍵上顯示的選項(xiàng)。
可以一次使用多個(gè)顯示器。
如果您想閱讀有關(guān)此軟件包的更多信息,請(qǐng)參閱Dominik最近的博客文章
Dominik
你有什么想法可以使包裝更好嗎? 考慮在shiny.info GitHub頁(yè)面上請(qǐng)求功能。
總結(jié)
我希望您可以利用我們的軟件包將您的Shiny開(kāi)發(fā)提升到一個(gè)新的水平,并更快地創(chuàng)建更好,更漂亮的應(yīng)用程序。文章將您的R閃亮應(yīng)用程序提升到新的水平 - 我們的開(kāi)源概述來(lái)自Appsilon Data| 端到端數(shù)據(jù)科學(xué)解決方案。