Jump to content

Extension:Chart

From mediawiki.org
This page is a translated version of the page Extension:Chart and the translation is 100% complete.
Příručka k rozšířením MediaWiki
Chart
Stav rozšíření: stabilní
Implementace Značka
Popis Vykresluje grafy
Autoři Brooke Vibber, Katie Filbert, Roan Kattouw
Zásady kompatibility Větev master zachovává zpětnou kompatibilitu.
MediaWiki >= 1.45
Změny v databázi Ne
Licence GNU General Public License 3.0 nebo novější
Stáhnout
README
  • $wgChartRequestSizeLimit
  • $wgChartProgressiveEnhancement
  • $wgChartTransformsEnabled
  • $wgChartServiceUrl
  • $wgChartCliPath
Přeložte rozšíření Chart, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření Chart poskytuje základní interaktivní funkce vizualizace dat, které mají nahradit některé, ale ne všechny aspekty rozšíření Graph . Toto rozšíření pro wikiny Wikimedie je v současné době ve vývoji. Další podrobnosti o procesu vývoje naleznete v části Extension:Chart/Project .

Toto rozšíření podporuje následující typy grafů:

Instalace

Rozšíření Chart vyžaduje nainstalované rozšíření JsonConfig a také stažení knihovny JavaScript (ve skutečnosti TypeScript) Chart Renderer.

Úplné pokyny k nastavení naleznete v souboru README.md v úložišti.

Pro použití v produkčních systémech Wikimedie viz obecné pokyny k nasazení služeb v sekci wikitech:Kubernetes/Deployments.

Jak používat

Chcete-li vykreslit graf, musíte definovat definici grafu, která bude přiřazena ke zdroji dat, který chcete vykreslit. Definice grafu je strukturována jako relativně jednoduchý soubor JSON. Podrobnosti syntaxe viz Extension:Chart/Specification .

Všechny grafy v tomto příkladu lze vykreslit ze stejného zdroje dat: Data:Chart Example Data.tab, fiktivní datová sada. Ukázkový obsah těchto stránek lze nalézt v adresáři sample.

Data:Example.chart
{
    "license": "CC0-1.0",
    "version": 1,
    "source": "Chart Example Data.tab",
    "type": "line",
    "title": {
        "en": "Example Chart Title"
    },
    "subtitle": {
        "en": "Example Subtitle"
    },"xAxis": {
        "title": {
        	"en": "Example X Axis Title"
        },
        "format": "none"
    },
    "yAxis": {
        "title": {
            "en": "Example Y Axis Title"
        },
        "format": "none"
    },
    "mediawikiCategories": [
        {
            "name": "Example category",
            "sort": "Its sortkey"
        }
    ],
    "transform": {
        "module": "Optional lua module for data transforms",
        "function": "transform_func",
        "args": {
            "arg_name": "arg_value"
        }
    }
}

Jakmile je graf definován, můžete jej snadno vykreslit pomocí funkce #chart parser. V tomto případě jsou data grafu definována v Data:Chart Example Data.tab a samotný graf je definován v Data:Example.Line.chart:

Wikipedia article title
{{#chart:Example.Line.chart}}

Všimněte si, že graf může být obecný a znovu použit s různými zdroji dat, například takto:

{{#chart:Population through years.chart
|data=Population of USA.tab
}}
{{#chart:Population through years.chart
|data=Population of UK.tab
}}
{{#chart:Population through years.chart
|data=Population of Poland.tab
}}


Přizpůsobení

Y axisColor number0200400600800100012001#4b77d6#eeb533#fd7865#80cdb3#269f4b#b0c1f0#9182c2#d9b4cd#b0832b#a2a9b1Color Hrubá data
Deset dostupných hexadecimálních barev.

Přizpůsobení grafů je v současné době omezené. Doufáme, že po testování, diskusi a vyhodnocení bude možné nalézt řešení pro přizpůsobení, která neohrozí přístupnost, vykreslování specifické pro dané zařízení ani bezpečnost.

Velikost

V současné době grafy zabírají celou šířku kontejneru, kam je umístíte.

Konečným cílem je zajistit, aby grafy bylo možné čitelně vykreslit bez ohledu na to, na jakém zařízení jsou čteny. Více informací najdete na stránce T376845.

Námět

V současné době jsou grafy omezeny na jednu výchozí barevnou paletu. Tato paleta byla pečlivě navržena s ohledem na přístupnost. Myšlenky, které stojí za těmito barevnými volbami, lze prozkoumat v článku T369863.

Některé grafy vyžadují specifická barevná témata, například pro znázornění dat týkajících se politických stran. Zůstává otevřenou otázkou, jak nejlépe podporovat tento typ přizpůsobení, aniž by byla ohrožena schopnost čtenářů s potřebami přístupnosti (např. barvoslepostí) je používat.

Upozornění

Upozorňujeme, že ačkoli grafy aktuálně vykreslují SVG výstup, který lze stylovat pomocí TemplateStyles, upozorňujeme, že stylování souvisejících SVG prvků by nemělo být považováno za stabilní, protože se může kdykoli změnit. Nespoléhejte se prosím na CSS pro úpravu vzhledu grafů, protože to může v budoucnu vést k nefunkčním grafům nebo to může narušit funkce přístupnosti, které mění velikost písma, a funkce, jako je tmavý režim.


Internacionalizace

Grafy lze vkládat pouze do jazyka obsahu wiki. Takže například řetězec dotazu "uselang" (např. ?uselang=es) graf neovlivní.

Formát grafu podporuje definování textu, jako je název a popisky, v různých jazycích, takže stejný graf lze použít na stránkách wikin různých jazyků. Viz příklad grafu s podporou více jazyků zobrazeného na španělsky psané wiki.

Známé chyby

Viz toto filtrované zobrazení tabulky Charts Phabricator.

Typy grafů

U všech grafů se očekává, že data budou uspořádána do sloupců, přičemž první sloupec představuje hodnotu x-axis a následující sloupce představují řady nebo křivky s hodnotou y-axis.

Spojnicový

%supportDate010203040509. 9. 199326. 9. 199319. 10. 1993ElvesEntsOrcsHobbitsTrollsExample Line ChartExample subtitle Hrubá data
Toto je příklad spojnicového grafu.

V následujícím příkladu je proměnná {{#chart: }} zabalena do kontejneru {{Image frame }}, který nastavuje šířku grafu a obsahuje popisek. Je také uveden odkaz na nezpracovaná tabulková data, kde lze nalézt informace o zdrojích dat:

Wikipedia article title
{{image frame
|content={{#chart:Example.Line.chart}} [[commons:Data:Chart Example Data.tab|'''Raw data''']]
|width = 340
|caption = This is an example of a line chart.
}}

Výsledek naleznete v této sekci.

Sloupcový

Zde graf zabírá celou šířku oblasti obsahu stránky:

Wikipedia article title
{{#chart:Example.Bar.chart}} <div align="center">[[commons:Data:Chart Example Data.tab|'''Raw data''']]</div>

To má za následek:

%supportDate010203040509. 9. 199326. 9. 199319. 10. 1993ElvesEntsOrcsHobbitsTrollsExample Bar ChartExample subtitle


Plošný

%supportDate0204060801009. 9. 199326. 9. 199319. 10. 1993ElvesEntsOrcsHobbitsTrollsExample Area ChartExample subtitle

Výsečový

Výsečové grafy jsou speciálním typem grafu a zdroje dat mohou vyžadovat úpravu, aby se správně vykreslily.

Při čtení dat budou všechny sloupce, které neobsahují čísla (např. osa x), zahozeny a v grafu bude zobrazen součet všech řádků.

Například pokud více řádků zobrazuje hodnoty pro A, B a C k různým datům, např. 1. ledna a 2. ledna, bude segment koláčového grafu pro A představovat součet všech hodnot řádků pro A v rámci těchto dat.

ElvesEntsOrcsHobbitsTrollsElvesEntsOrcsHobbitsTrollsExample Pie ChartExample subtitle


Hledání existujících grafů

Grafy, které lze použít v článcích, jsou k dispozici na Wikimedia Commons a lze je sledovat pomocí kategorií MediaWiki.

Tento dotaz lze použít jako zástupný dotaz k nalezení grafů, které vytvořili jiní, a k jejichž překladům přispěli, a k nalezení záložek, které lze použít k vytvoření grafů.

Sada wiki stránek, které používají grafy na jakékoli konkrétní wiki, se nachází v kategorii, jejíž název je definován na hodnotě MediaWiki:chart-render-category a MediaWiki:Chart-error-category (na této wiki Category:Pages using the Chart extension a Category:Pages using the Chart extension with rendering errors ). Pro snazší vyhledávání na interwiki prosím propojte kategorie wiki s d:Q131382738 a d:Q131406605.

Migrace z rozšíření Graph

Staré grafy, které je třeba migrovat do rozšíření Charts, naleznete v kategorii stránky Wikipedie se zakázanými grafy v různých jazycích. Některé však již byly smazány, aniž by byly nahrazeny novými grafy. Seznam lze porovnat s archivovaným seznamem prvních 200 z 23 811 stránek anglické Wikipedie se zakázanými grafy z roku 2023, krátce poté, co byly šablony do této kategorie přidány, a odpovídajícím seznamem v jiných jazycích.


Technická dokumentace

Vzhledem k problémům s Extension:Graph byla všechna rozhodnutí týkající se nového rozšíření pečlivě zvážena s nadějí na vybudování důvěry v jeho nahrazení.

Technická rozhodnutí jsou zatím zdokumentována v repozitáři kódu ve složce /doc/adr.

Monitorování chyb

Stránky s nedostatkem .chart se automaticky ukládají do commons:Category:Pages using the Chart extension with rendering errors. Wiki stránky s chybnými grafy se v různých jazykových verzích automaticky ukládají do kategorie Stránky používající rozšíření Chart s chybami vykreslování.

Chyby s vykreslováním grafů na straně klienta budou zaznamenány do logstash. (Jen pro vývojáře.)

Nástroje pro tvorbu grafů

Existuje několik možných metod pro poloautomatické vytváření a úpravu grafů a jejich tabulkových dat:

  • Skript graphDataImport lze ve webovém prohlížeči použít k extrakci dat z existujícího grafu wikitextu a podobných objektů a k jejich převodu na stránku o velikosti .tab, stránku s definicí o velikosti .chart a nový wikitext.
  • Generativní umělá inteligence může být vyzvána k extrakci dat z existujícího grafového wikikódu a tabulek, k jejich převodu na stránky o velikosti .tab a .chart a k vygenerování nového wikikódu podle zadaných specifikací. Může také poskytovat překlad názvů a být použit k rozšíření a aktualizaci stránky .tab o nová data.
  • Gadget TabularImportExport dokáže převádět soubory Excel a .csv na stránky .tab a z nich. Můžete ji aktivovat prostřednictvím vašich nastavení Commons.
  • Uživatelské rozhraní JSON Editovat jako tabulku (součást rozšíření Jsonconfig ) je k dispozici na stránce úprav .tab.
  • Někteří roboti mohou na požádání periodicky importovat statistiky z webu nebo z existujících grafů Wikipedie na .tab nebo .chart stránky. Mezi takové roboty patří DPLA bot a SLiuBot.
  • GraphBot převádí grafy z anglické Wikipedie do tabulek.


Související odkazy