Kurz: Vytvoření trychtýřového grafu ze skriptu R do vizuálu R

Tento článek popisuje, jak vytvořit trychtýřový graf pomocí skriptu jazyka R ve vizuálu jazyka R krok za krokem. Zdrojové soubory jsou k dispozici ke stažení v rámci každé sady kroků.

V tomto článku se dozvíte, jak vytvořit:

  • skript jazyka R pro RStudio
  • Vizuál jazyka R v Power BI
  • Vizuál R založený na formátu PNG v Power BI
  • Vizuál R založený na HTML v Power BI

Trychtýřový graf poskytuje snadný způsob, jak využívat, interpretovat a zobrazovat očekávané odchylky. Trychtýř je vytvořen pomocí limitů spolehlivosti a odlehlé hodnoty jsou zobrazeny jako tečky mimo trychtýř.

V tomto příkladu se trychtýřový graf používá k porovnání a analýze různých sad dat.

Požadavky

Sestavení skriptu jazyka R pomocí sémantického modelu

  1. Stáhněte si minimální skript jazyka R a jeho tabulku dat dataset.csv.

  2. Dále upravte skript tak, aby zrcadlil tento skript. Tím se přidá zpracování vstupních chyb a parametry uživatele pro řízení vzhledu grafu.

Vytvoření sestavy

Dále upravte skript tak, aby zrcadlil tento skript. Tím se do pracovního prostoru Power BI Desktopu načte dataset.csv místo read.csv a vytvoří se tabulka Rakovinná úmrtnost. Prohlédněte si výsledky v následujícím souboru PBIX.

Poznámka:

Jedná se dataset o pevně zakódovaný název pro vstup data.frame libovolného vizuálu R.

Vytvoření vizuálu a balíčku R v kódu jazyka R

  1. Spuštěním následujícího příkazu vytvořte nový vizuál R:

    pbiviz new funnel-visual -t rvisual
    cd funnel-visual
    npm install 
    pbiviz package
    

    Tento příkaz vytvoří trychtýřový vizuál složky s počátečním vizuálem šablony (-tpro šablonu). Soubor PBIVIZ najdete ve složce dist , kód R uvnitř souboru script.r . Zkuste ho importovat do Power BI a podívejte se, co se stane.

  2. Upravte soubor script.r a nahraďte obsah předchozím skriptem.

  3. Upravte capabilities.json a nahraďte řetězec Values řetězcem dataset. Tím se nahradí název role v šabloně, který se bude podobat kódu R.

    Snímek obrazovky ukazuje rozdílové porovnání změny v souboru JSON.

  4. (volitelné) Upravte dependencies.json a přidejte oddíl pro každý balíček R vyžadovaný skriptem R. To službě Power BI říká, aby tyto balíčky automaticky naimportovat při prvním načtení vizuálu.

    Snímek obrazovky ukazuje rozdílové porovnání, ve kterém byl obsah přidán do položek cranPackages.

  5. Znovu zabalte vizuál pomocí pbiviz package příkazu a zkuste ho importovat do Power BI.

Poznámka:

Viz SOUBOR PBIX a zdrojový kód ke stažení.

Vylepšení vizuálů založených na jazyce R

Vizuál zatím není uživatelsky přívětivý, protože uživatel musí znát pořadí sloupců ve vstupní tabulce.

  1. Rozdělte vstupní pole dataset na tři pole (role): Population, Numbera Tooltips

    CV01to02

  2. Upravte capabilities.json a nahraďte dataset roli třemi novými rolemi nebo stáhněte capabilities.json.

    Budete muset aktualizovat oddíly: dataRoles a dataViewMappings, které definují názvy, typy, popisy a maximální počet sloupců pro každé vstupní pole.

    před a po

    Další informace najdete v tématu o možnostech.

  3. Upravte script.r tak, Number aby podporovala Populationa Tooltips jako vstupní datové rámce namísto datasetsouboru script.r nebo je stáhla.

    .

    Tip

    Pokud chcete postupovat podle změn ve skriptu R, vyhledejte bloky komentářů:

    #RVIZ_IN_PBI_GUIDE:BEGIN: Added to enable visual fields
    ...
    #RVIZ_IN_PBI_GUIDE:END: Added to enable visual fields
    
    #RVIZ_IN_PBI_GUIDE:BEGIN: Removed to enable visual fields 
    ...
    #RVIZ_IN_PBI_GUIDE:BEGIN: Removed to enable visual fields
    
  4. Znovu zabalte vizuál pomocí pbiviz package příkazu a zkuste ho importovat do Power BI.

Poznámka:

Viz SOUBOR PBIX a zdrojový kód ke stažení.

Přidání uživatelských parametrů

  1. Přidání možností pro uživatele k ovládání barev a velikostí vizuálních prvků včetně interních parametrů z uživatelského rozhraní

    Snímek obrazovky ukazuje dvě verze podokna nástrojů s možnostmi přidanými do verze vpravo.

  2. Upravte capabilities.json a aktualizujte objects oddíl. Tady definujeme názvy, popisy a typy jednotlivých parametrů a také se rozhodneme o oddílu parametrů do skupin (v tomto případě tři skupiny).

    download capabilities.json, viz vlastnosti objektu další informace

    možnosti

  3. Upravte src/settings.ts tak, aby zrcadlil tento settings.ts. Tento soubor je napsaný v TypeScriptu.

    Tady najdete dva bloky kódu přidaného do:

    • Deklarace nového rozhraní pro uložení hodnoty vlastnosti
    • Definování vlastnosti člena a výchozích hodnot

    settings

  4. Upravte script.r tak, aby zrcadlil tento script.r. Tím se přidá podpora parametrů v uživatelském rozhraní přidáním if.exists volání podle parametru uživatele.

    Tip

    Pokud chcete postupovat podle změn ve skriptu R, vyhledejte komentáře:

    #RVIZ_IN_PBI_GUIDE:BEGIN:Added to enable user parameters
     ...
    #RVIZ_IN_PBI_GUIDE:END:Added to enable user parameters
    
    #RVIZ_IN_PBI_GUIDE:BEGIN:Removed to enable user parameters 
     ...
    #RVIZ_IN_PBI_GUIDE:END:Removed to enable user parameters
    

    skript před a po

    Můžete se rozhodnout, že parametry nezpřístupníte v uživatelském rozhraní, jako jsme to udělali.

  5. Znovu zabalte vizuál pomocí pbiviz package příkazu a zkuste ho importovat do Power BI.

Poznámka:

Viz SOUBOR PBIX a zdrojový kód ke stažení.

Tip

Tady jsme přidali parametry několika typů (logická hodnota, číselná hodnota, řetězec a barva) najednou. Jednoduchý případ najdete v tomto příkladu , jak přidat jeden parametr.

Převod vizuálu na vizuál založený na jazyce RHTML

Vzhledem k tomu, že výsledný vizuál je založený na png, nereaguje na najetí myší, nedá se přiblížit a tak dále, takže ho potřebujeme převést na vizuál založený na HTML. Vytvoříme prázdnou šablonu vizuálu založenou na jazyce R a pak zkopírujeme některé skripty z projektu založeného na formátu PNG.

  1. Spusťte příkaz:

    pbiviz new funnel-visual-HTML -t rhtml
    cd funnel-visual-HTML
    npm install 
    pbiviz package
    
  2. Otevřete capabilities.json a poznamenejte si "scriptOutputType":"html" řádek.

  3. Otevřete dependencies.json a poznamenejte si názvy uvedených balíčků R.

  4. Otevřete script.r a poznamenejte si strukturu. Můžete ho otevřít a spustit v RStudio, protože nepoužívá externí vstup.

    Tím se vytvoří a uloží out.html. Tento soubor je samostatný (bez externích závislostí) a definuje grafiku uvnitř widgetu HTML.

    Důležité

    Pro htmlWidgets uživatele jsou nástroje jazyka R k dispozici ve složce r_files, které vám pomůžou převést plotly objekty widget do kódu HTML s vlastním obsahem.

    Tato verze vizuálu R podporuje source také příkaz (na rozdíl od předchozích typů vizuálů), aby byl kód čitelnější.

  5. Nahraďte capabilities.json capabilities.json z předchozího kroku nebo stáhněte capabilities.json.

    Nezapomeňte zachovat:

    "scriptOutputType": "html"

  6. Sloučí nejnovější verzi script.r se skript.r ze šablony nebo stáhne script.r.

    Nový skript pomocí plotly balíčku převede ggplot objekt na plotly objekt a pak htmlWidgets balíček uložit do souboru HTML.

    Většina funkcí nástroje se přesune do r_files/utils.r a generateNiceTooltips funkce se přidá pro vzhled vykreslovaného objektu.

    1

    2

    Tip

    Pokud chcete postupovat podle změn ve skriptu R, vyhledejte komentáře:

    #RVIZ_IN_PBI_GUIDE:BEGIN:Added to create HTML-based 
     ...
    #RVIZ_IN_PBI_GUIDE:BEGIN:Added to create HTML-based
    
    #RVIZ_IN_PBI_GUIDE:BEGIN:Removed to create HTML-based  
    ...
    #RVIZ_IN_PBI_GUIDE:BEGIN:Removed to create HTML-based
    
  7. Sloučit nejnovější verzi dependencies.json s dependencies.json ze šablony, zahrnout nové závislosti balíčku R nebo stáhnout dependencies.json.

  8. Upravte src/settings.ts stejným způsobem jako v předchozích krocích.

  9. Znovu zabalte vizuál pomocí pbiviz package příkazu a zkuste ho importovat do Power BI.

Poznámka:

Viz SOUBOR PBIX a zdrojový kód ke stažení.

Sestavení dalších příkladů

  1. Spuštěním následujícího příkazu vytvořte prázdný projekt:

    pbiviz new example -t rhtml
    cd example
    npm install 
    pbiviz package
    
  2. Převezměte kód z této prezentace a proveďte zvýrazněné změny:

    Zvýrazněné změny

  3. Nahraďte skript.r šablony a spusťte pbiviz package to znovu. Vizuál je teď součástí sestavy Power BI!

Tipy a triky

  • Doporučujeme vývojářům upravit pbiviz.json tak, aby ukládaly správná metadata, jako jsou verze, e-mail, název, typ licence atd.

    Důležité

    Pole guid je jedinečný identifikátor vizuálu. Pokud pro každý vizuál vytvoříte nový projekt, identifikátor GUID se také bude lišit. Je to stejné jenom při použití starého projektu zkopírovaného do nového vizuálu, který byste neměli dělat.

  • Upravte prostředky nebo icon.png a vytvořte jedinečné ikony pro vizuál.

  • Pokud chcete v RStudiu ladit R-code pomocí stejných dat jako v sestavě Power BI, přidejte na začátek skriptu R následující kód (upravte proměnnou fileRda ):

    #DEBUG in RStudio
    fileRda = "C:/Users/yourUserName/Temp/tempData.Rda"
    if(file.exists(dirname(fileRda)))
    {
       if(Sys.getenv("RSTUDIO")!="")
         load(file= fileRda)
       else
         save(list = ls(all.names = TRUE), file=fileRda)
    }
    

    Tím se prostředí uloží ze sestavy Power BI a načte ho do RStudio.

  • Nemusíte vyvíjet vizuály R úplně od začátku s kódem dostupným na GitHubu. Můžete vybrat vizuál, který se má použít jako šablona, a zkopírovat kód do nového projektu.

    Zkuste například použít vlastní vizuál spline.

  • Každý vizuál jazyka unique R použije operátor na svoji vstupní tabulku. Abyste se vyhnuli odebrání stejných řádků, zvažte přidání dalšího vstupního pole s jedinečným ID a ignorování v kódu R.

  • Pokud máte účet Power BI, použijte služba Power BI k vývoji vizuálu za běhu a nemusíte je pbiviz package znovu zabalit pomocí příkazu.

Prozkoumejte vizuály v galerii widgetů HTML pro použití v dalším vizuálu. Abychom usnadnili práci, vytvořili jsme úložiště projektů vizuálů s více než 20 interaktivními vizuály HTML, ze kterých si můžete vybrat.

Tip

Chcete-li přepínat mezi widgety HTML, použijte typ nastavení>formátu.> Vyzkoušejte si ho s tímto souborem PBIX.

Použití ukázky pro vizuál

  1. Stáhněte si celou složku.
  2. Upravte script.r a dependencies.json tak, aby zůstal jenom jeden widget.
  3. Upravte capabilities.json a settings.ts a odeberte Type selektor.
  4. Přejděte const updateHTMLHead: boolean = true; do false visual.ts. (pro lepší výkon)
  5. Změňte metadata v pbiviz.json, nejdůležitější je guid pole.
  6. Znovu zabalte a pokračujte v přizpůsobení vizuálu podle potřeby.

Snímek obrazovky ukazuje šest widgetů probíraných dříve v tomto článku.

Snímek obrazovky ukazuje šest dalších widgetů probíraných dříve v tomto článku.

Poznámka:

Služba nepodporuje všechny widgety v tomto projektu.

Další informace najdete v dalšíchkurzch

Zjistěte, jak vyvíjet a odesílat vizuály do Office Storu (galerie) nebo další příklady, viz prezentace skriptu jazyka R.