Р Схини Туториал: Све што треба да знате



Овај Р Схини Туториал пружиће вам детаљно и свеобухватно знање о Р Схини и како да креирате интерактивне веб апликације.

Развојем технологије појавили су се новији алати и оквири за изградњу веб апликација које приказују статистику, мапе и графиконе у реалном времену. Пошто ове функционалности захтевају високу обраду и синхронизацију, програмски језици се користе за смањење времена учитавања сервера. У овом водичу за Р сјајне објаснићу вам како да Р најбоље искористите на динамичким веб апликацијама.

Обрадићемо и разумети следеће теме:





Шта је Р Схини?

Схини је Р пакет који омогућава корисницима да граде интерактивне веб апликације. Ова алатка креира ХТМЛ еквивалентну веб апликацију од сјајног кода. Интегришемо изворни ХТМЛ и ЦСС код са функцијама Р Схини да бисмо учинили апликацију презентабилном. Схини комбинује рачунску снагу Р са интерактивношћу модерне мреже.Схини креира веб апликације које су распоређене на вебу помоћу вашег сервера или услуга хостинга Р Схини.

јава како претворити доубле у инт

Карактеристике Р Схини:

  • Створите једноставне апликације са основним или никаквим знањем веб алата
  • Интегришите Схини са изворним веб алатима да бисте побољшали флексибилност и продуктивност
  • Унапред уграђене функције У / И и приказивања
  • Лако приказивање садржаја апликације без вишеструког поновног учитавања
  • Значајка за додавање израчунатих (или обрађених) излаза из Р скрипти
  • Додајте извештаје уживо и визуелизације.

То нас доводи до питања:



По чему се Схини разликује од традиционалних апликација?

Дозволите нам да узмемо пример временске апликације, кад год корисник освежи / учита страницу или промени било који улаз, требало би да ажурира целу страницу или део странице помоћу ЈС-а. Ово додаје оптерећење на страни сервера за обраду. Схини омогућава кориснику да изолује или прикаже (или поново учита) елементе у апликацији што смањује оптерећење сервера. Прелиставање страница било је једноставно у традиционалним веб апликацијама, али било је тешко са Схини апликацијама. Структура кода игра главну улогу у разумевању и отклањању грешака у коду. Ова функција је пресудна за сјајне апликације у односу на друге апликације.

Пређимо на следећу тему у водичу за Р Схини, инсталирање пакета Р Схини.

Инсталирање Р Схини

Инсталирање Схини-а је попут инсталирања било ког другог пакета у Р. Идите на Р Цонсоле и покрените доњу команду да бисте инсталирали пакет Схини.



инсталл.пацкагес ('сјајни')

Инсталирајте Р Схини - Р схини туториал - Едурека

Након што инсталирате, учитајте Схини пакет да бисте креирали Схини апликације.

библиотека (сјајна)

Пре него што пређемо даље у овом Р сјајном упутству, погледајмо и разумемо структуру сјајне апликације.

Структура сјајне апликације

Сјајни се састоји од 3 компоненте:

  1. Кориснички интерфејс
  2. Сервер
  3. СхиниАпп

један.Функција корисничког интерфејса

Кориснички интерфејс (УИ) функција дефинише изглед и изглед апликације. У апликацију можете да додате ЦСС и ХТМЛ ознаке да бисте апликацију учинили представљивијом. Функција садржи све улазе и излазе који се приказују у апликацији. Сваки елемент (одељење или картица или мени) унутар апликације дефинисан је помоћу функција. Приступа им се помоћу јединственог ИД-а, попут ХТМЛ елемената.Научимо даље о разнимфункције коришћене у апликацији.

Функције сјајног распореда

  • хеадерПанел ()додајте наслов у апликацију. титлеПанел () дефинише поднаслов апликације. Погледајте доњу слику за боље разумевање хеадерПанел и титлеПанел .
  • СидебарЛаиоут ()дефинише изглед за задржавање сидебарПанел и маинПанел елементи. Изглед дели екран апликације на панел бочне траке и главни панел. На пример, на доњој слици црвени правоугаоник је маинПанел површина и површина црног правоугаоника вертикално је сидебарПанел подручје.

  • веллПанел ()дефинише контејнер који у истој мрежи садржи више објеката улазно / излазних објеката апликације.
  • табсетПанел ()ствара контејнер за држање језичака. табПанел () додаје картицу у апликацију дефинишући елементе и компоненте картице. На доњој слици црнаправоугаоник је табсетПанел објекат а црвени правоугаоник је табПанел објект.
  • навлистПанел ()пружа бочни мени са везама до различитих панела картица сличних табсетПанел () попут вертикалне листе на левој страни екрана. На слици испод црни правоугаоник је навлистПанел објекат а црвени правоугаоник је табПанел објект.

Уз функције сјајног изгледа, у сваки виџет за унос у апликацију можете да додате и уграђени ЦСС.Апликација Схини садржи карактеристике веб технологија заједно са сјајним Р функцијама и функцијама за обогаћивање апликације. Користите ХТМЛ ознаке у апликацији Схини усинг тагови $.

Изглед је спреман, време је да додате виџете у апликацију. Схини пружа различите корисничке улазне и излазне елементе за интеракцију корисника. Размотримо неколико улазних и излазних функција.

Сјајне функције уноса

Сваки виџет за унос има ознаку, Ид, остале параметре као што су избор, вредност, изабрано, мин, макс, итд.

  • селецтИнпут ()- креирајте падајући ХТМЛ елемент.
селецтИнпут ('селецт', х3 ('Селецт бок'), цхоицес = лист ('Цхоице 1' = 1, 'Цхоице 2' = 2, 'Цхоице 3' = 3), селецтед = 1)

  • нумерицИнпут ()- област уноса за унос броја или текста.
датеИнпут ('нум', 'Дате инпут', валуе = '01.01.2014') нумерицИнпут ('нум', 'Нумериц инпут', валуе = 1) тектИнпут ('нум', 'Нумериц инпут', валуе = ' Унесите текст ... ')

  • радиоБуттонс ()- створити радио дугмад за унос корисника.
радиоБуттонс ('радио', х3 ('Радио тастери'), цхоицес = лист ('Цхоице 1' = 1, 'Цхоице 2' = 2, 'Цхоице 3' = 3), селецтед = 1)

Сјајне функције излаза

Схини пружа разне излазне функције које се приказују Р. излази попут графикона, слика, табела итд. који приказују одговарајуће Р. објект.

  • плотОутпут ()- приказати Р плот објект.
плотОутпут'топ_батсман ')
  • таблеОутпут ()- приказује излаз као табелу.
таблеОутпут'плаиер_табле ')

2. Функција сервера

Сервер функција дусавршава логику апликације Схини на страни сервера. Укључује стварање функција и излаза који користе улазе за стварање различитих врста резултата. Сваки клијент (веб прегледач) позива функцију сервера када први пут учита апликацију Схини. Сваки излаз чува повратну вриједност из функција приказа.

Ове функције хватају Р израз и врше прорачуне и претходну обраду израза. Користите функцију рендер * која одговара излазу који дефинишете. Приступимо виџетима за уносКористећи унесите $ [ид видгет-ид] . Ове улазне променљиве су реактивне вредности. Све посредне променљиве створене помоћу улазних променљивих треба учинити реактивним коришћењем реактиван ({}) . Приступите променљивим помоћу ().

дати, пружити * функције извршавају прорачун унутар функције сервера и похрањују у излазне варијабле. Излаз треба сачувати помоћу излаз $ [име излазне променљиве] . Свака дати, пружити * функција узима један аргумент, тј. Р израз окружен заградама, {}.

3. СхиниАпп функција

схиниАпп ()функција је срцеапликација која позива ЛУК и сервер функције за стварање сјајне апликације.

Слика испод приказује обрисе апликације Схини.

Пређимо на следећи сегмент у водичу Р Схини да бисмо креирали прву апликацију Р Схини.

Направите сјајни веб пројекат

Иди на Филе и Креирајте а Нови пројекат у било ком директоријуму -> Сјајна веб апликација -> [Име директорија сјајне апликације]. Унесите име директоријума и кликните У реду .

Сваки нови пројекат Схини апп садржаће пример хистограма за разумевање основа сјајне апликације. Апликација хистограм садржи клизач праћен хистограмом који ажурира излаз за промену клизача. Испод је излаз апликације хистограм.

Да бисте покренули апликацију Схини, кликните на Покрените апликацију дугме у горњем десном углу изворног окна. Апликација Схини приказује виџет клизач који узима број канти за улаз и приказује хистограм у складу са улазом.

Сада када сте разумели структуру и како покренути апликацију Схини. Кренимо са стварањем наше прве сјајне апликације.

Направите прву апликацију Схини

Можете створити нови пројекат или наставити у истом радном директоријуму. У овом водичу Р Схини направићемо једноставну апликацију Схини за приказ ИПЛ статистике. Скуп података који се користи у апликацији може се преузети овде . Скуп података садржи 2 датотеке, испоруке.цсв садржи испоруке резултата за сваку лопту (преко) лоптача, куглача, детаље трчања и шибице.цсв датотека садржи детаље о мечу као што су локација, жреб, место одржавања и детаљи игре. Апликација у наставку захтева основно знање о дплир и да бисте разумели доњи водич.

Следите кораке у наставку да бисте креирали своју прву сјајну апликацију.

Корак 1 : Направите обрис сјајне апликације.

Обришите постојећи код, осим дефиниција функција у апликација . Р. датотека.

тип података датума скл сервера

Корак 2 : Учитајте библиотеке и податке.

У овом кораку учитавамо потребне пакете и податке. Затим очистите и трансформишите извучене податке у жељени формат. Додајте доњи код пре ЛУК и сервер функцију.

Шифра:

библиотека (сјајна) библиотека (тидиверсе) # Учитавање скупа података --------------------------------------- ---------------- испоруке = реад.цсв ('Ц: УсерсЦхерукури_СиндхуДовнлоадсделивериес.цсв', стрингсАсФацторс = ФАЛСЕ) одговара = реад.цсв ('Ц: УсерсЦхерукури_СиндхуДовнлоадсматцхес.цсв', стрингсАсФацторс = ФАЛСЕ) # Чишћење скупа података --------------------------------------------- --------- имена (подударања) [1] = 'матцх_ид' ИПЛ = дплир :: иннер_јоин (подударања, испоруке)

Објашњење :

Учитавају се прве 2 линије тидиверсе и Сјајна пакет. Следећа 2 реда учитавају скупове података испоруке и подударања и чувају у променљивимиспорукеишибице. Последња 2 реда ажурирају назив колоне датотекешибицескуп података за извођење унутрашњег спајања саиспорукесто. Резултат придруживања чувамо уИПЛпроменљива.

3. корак : Направите изглед апликације Схини .

Као што је претходно речено, ЛУК функција дефинише изглед апликације, виџете и објекте у апликацији Схини.Размотримо то детаљно.

Код

лук<- fluidPage( headerPanel('IPL - Indian Premier League'), tabsetPanel( tabPanel(title = 'Season', mainPanel(width = 12,align = 'center', selectInput('season_year','Select Season',choices=unique(sort(matches$season, decreasing=TRUE)), selected = 2019), submitButton('Go'), tags$h3('Players table'), div(style = 'border:1px black solidwidth:50%',tableOutput('player_table')) )), tabPanel( title = 'Team Wins & Points', mainPanel(width = 12,align = 'center', tags$h3('Team Wins & Points'), div(style = 'float:leftwidth:36%',plotOutput('wins_bar_plot')), div(style = 'float:rightwidth:64%',plotOutput('points_bar_plot')) ) )))

Тхе ЛУК функција садржи а хеадерПанел () или титлеПанел () а праћен табсетПанел да бисте дефинисали више картица у апликацији. табПанел () дефинише објекте за сваку картицу. Свака табПанел () састоји се од наслова и маинПанел (). маинПанел () ствара контејнер ширине 12 тј. пуни прозор и поравнава улазне и излазне објекте у средини.

Објашњење

Апликација се састоји од 2 картице: Сезона и Победе и бодови у тиму.

Сезона таб састоји се од селецтИнпут ( ) , дугме за слање и табела. сезона_година користи се за читање података са лје вредности. таблеОутпут () приказује излаз табеле израчунат на функцији сервера.Табела плаиер_табле приказана је испод дугмета које је дефинисано у функцији сервера о чему ће бити речи у следећем кораку. Победе и бодови у тиму картица приказује тимску победу и бодове на одговарајућим тракастим картама. плотОутпут () приказује излазе враћене из рендера * функције. Све излазне, улазне функције су затворене унутар див ознаке за додавање уграђеног стила.

Сада када смо упознати са функцијом уи, наставимо са разумевањем и употребом функције сервера у нашем водичу Р Схини.

Корак 4: Додајте наредбе функције сервера

Тхе сервер функција укључује стварање функција и оутпутс који користе корисничке улазе за стварање различитих врста резултата. Тхефункција сервера је објашњена корак по корак у наставку.

матцх_иеар = реактиван ({матцх%>% филтер (сеасон == инпут $ сеасон_иеар)}) плаи = реацтиве ({нтх (сорт (матцхес_иеар () $ матцх_ид, децреасинг = ТРУЕ), 4)}) матцхес_плаиед = реацтиве ({матцхес_иеар ()%>% филтер (матцх_ид% гроуп_би (теам1)%>% суммаризе (цоунт = н ())}) т2 = реактиван ({матцхес_плаиед ()%>% гроуп_би (теам2)%>% суммисе (цоунт = н ( ))}) вл = реактиван ({матцх_плаиед ()%>% филтер (виннер! = '')%>% гроуп_би (виннер)%>% суммисе (но_оф_винс = н ())}) вл1 = реактиван ({матцх_плаиед ( )%>% гроуп_би (победник)%>% резимирај (но_оф_винс = н ())}) везан = реактиван ({матцх_плаиед ()%>% филтер (виннер == '')%>% селецт (теам1, теам2)} ) плаиертабле = реактиван ({дата.фраме (Теамс = т1 () $ теам1, Плаиед = т1 () $ цоунт + т2 () $ цоунт, Винс = вл () $ но_оф_винс, Поинтс = вл () $ но_оф_винс * 2) })

Горе наведени филтрирани кодни мечеви одиграни сваке године пре плеј-офа и резултат чувају у променљивој матцх_плаиед.плаиер_таблетабела садржи статистику утакмица по тиму, тј. одигране, победе и бодове. Променљивематцх_плаиед,плаиер_табле,т1,везан, итд су сви средњи реактивне вредности . Овим променљивим треба приступити помоћу () као што је приказано у коду изнад.плаиер_таблесе приказује помоћу функције рендерТабле. Даље, креирајте излазну променљиву за складиштење плаитабле-а.

излаз $ плаиер_табле = рендерТабле ({плаиертабле ()})

Сада можемо да креирамо тракасте табеле како бисмо приказали победе и бодове које је постигао сваки тим у сезони. Доњи код приказује тракасти графикон помоћу ггплот-а. рендерПлот () преузима ггплот објекат и спрема резултат у променљивувинс_бар_плот.Ггплот код је саморазумљив, укључује основне функције графике и мапирања за уређивање легенде, налепница и цртежа.

излаз $ винс_бар_плот = рендерПлот ({ггплот (вл1 () [2: 9,], аес (побједник, без_победа, попуна = побједник)) + геом_бар (стат = 'идентитет') + тхеме_цлассиц () + клаб ('Теамс') + илаб ('Нумбер оф Винс') + тема (акис.тект.к = елемент_тект (цолор = 'вхите'), легенд.поситион = 'ноне', акис.титле = елемент_тект (сизе = 14), плот.бацкгроунд = елемент_прави (боја = 'бела')) + геом_тект (аес (к = добитник, (без_победа + 0,6), ознака = без_победа, величина = 7))}) излаз $ поинтс_бар_плот = рендерПлот ({ггплот (плаиертабле (), аес ( Тимови, Поени, попуни = Тимови)) + геом_бар (стат = 'идентитет', величина = 3) + тхеме_цлассиц () + тема (акис.тект.к = елемент_тект (цолор = 'вхите'), легенд.тект = елемент_тект ( сизе = 14), акис.титле = тект_тект (сизе = 14)) + геом_тект (аес (Теамс, (Поинтс + 1), лабел = Поинтс, сизе = 7))})

Корак 5: Покрените апликацију Схини.

Кликните на Покрени апликацију. Након успешног покретања, ваша апликација Схини ће изгледати као испод. Свака грешка или упозорењеповезане са апликацијом, приказаће их у Р конзоли.

Таб1 - Сезона

Таб2 - Победе и бодови у тиму

Да видимо какода подеситеСхиниаппс.ио налог за примену ваших сјајних апликација.

Подесите Схиниаппс.ио налог

Иди на С.хиниаппс.ио и пријавите се са својим подацима, а затим додајте јединствено име налога за страницу и сачувајте је. Након успешног чувања, видећете детаљан поступак за примену апликација из Р конзоле. Следите поступак у наставку да бисте конфигурисали свој налог у Рстудио.

Корак 1. Инсталирајте рсцоннецт

инсталл.пацкагес ('рсцоннецт')

Корак 2. Одобри налог

Тхе рсцоннецт пакет мора бити ауторизован за ваш налог помоћу токена и тајне. Да бисте то урадили, копирајте целу команду као што је приказано доле на страници ваше контролне табле у Р. конзола. Након што сте успешно унели команду у Р, сада вас овлашћујем да разместите апликације на свој Схиниаппс.ио налог.

Фибоначијеве серије у језику Ц ++
рсцоннецт :: сетАццоунтИнфо (наме = 'име рачуна', токен = 'токен', сецрет = 'сецрет')

3. корак Примени апликацију

Користите доњи код за примену сјајних апликација.

библиотека (рсцоннецт) рсцоннецт :: деплоиАпп ('путања / до / ваше / апликације')

Једном постављени, спремни сте за примену сјајних апликација.

Сада када сте научили како да креирате и покрећете апликације Схини, примените апликацију коју смо управо креирали у Схиниаппс.ио како је горе објашњено или кликните на објавити, који је присутан у горњем десном углу прозора апликације Схини.

надам седа вам је овај водич за Р Схини помогао да научите како да креирате и покренете апликацију Схини. Забавите се креирајући интерактивне и лепе веб апликације користећи Р Схини.

Ако желите да научите Р програмирање и изградите живописну каријеру у Аналитици података, погледајте нашу који долази са обуком уживо коју воде инструктори и искуством у стварном животу. Овај тренинг ће вам помоћи да разумете аналитику података и помоћи да постигнете овладавање предметом.