Vikipedio:Lua/Moduloj/Graph

El Vikipedio, la libera enciklopedio
Ŝablona programado Diskutoj Lua Testoj Subpaĝoj
Modulo Esperanto English Deutsch

Modulo: Dokumentado

Modulo kun helpaj funkcioj por la Graph-etendilo.

Funkcioj por ŝablonoj

map

Kreas JSON-objekton por <graph> por la surekranigo de politika mapo kun koloraj markigoj. En la artikola nomspaco estu uzata la ŝablono {{Graph:Map}}. Vidu tie ankaŭ por uzaj ekzemploj.

Mapoj troviĝas sub Specialaĵo:PrefixIndex/Modulo:Graph/ (ekzemple WorldMap-iso2.json kun ĉiuj ŝtataj limoj) kaj pliaj estu kreata, tial ankaŭ sub Modulo:Graph/.

Parametro:

  • basemap: Difinas kiu baza mapo estu uzata. La mapodifinoj devas okazi en TopoJSON-formato, kaj tiam esti metataj al Vikipedio, kie ili poste estas je dispono por ĉi tiu modulo. Mapoj en la norma dosierujo Specialaĵo:PrefixIndex/Modulo:Graph/ kiel WorldMap-iso2.json estu referencataj nur per iliaj nomoj kaj la prefikso „Modulo:Graph/“ pro portierbarkeit estu forlasataj. Krome ankaŭ URLoj estas akceptataj, ekz. se mapoj de aliaj Vikipediaj lingvoversioj estu uzataj (la Angabe ĉe tio okazu kiel //en.wikipedia.org/w/index.php?title=Mapname&action=raw, t.he protokolrelative sen http/s je la komenco kaj kun action=raw por eksklude redoni la paĝan enhavon). URLoj al mapoj de eksteraj retpaĝaroj ne estu uzataj por stabileco, performanco kaj sekureco resp. estu blokataj de la softvaro aŭ de la foliumilo.
  • scale: Skalada faktoro de la mapo (normo: 100)
  • projection: Metodo de la mapoprojekcio. Por eblaj valoroj vidu https://github.com/mbostock/d3/wiki/Geo-Projections. La norma valoro estas equirectangular por rektangularprojekcio (plata mapo).
  • IDoj de la geografiaj objektoj: Ĉi tiu parametroj dependas de la uzata baza mapo. En la antaŭe menciita ekzempla mapo tio estas duciferaj ISO-landokodoj. La valoro povas esti aŭ kolordifino aŭ numero, se al la unuopaj geografiaj objektoj estu alordigataj datumoj: DE=lightblue kolorigu sur la mapo Germanujon en helblua koloro, DE=80.6 aloridigus al Germanujo la valoron 80.6 (ĉi tie la nombro de loĝantoj en Milionoj). La konkreta kolorigo rezultas tiam el la sekvaj parametroj.
    • colorScale: uzata koloropaleto. La formato estas per komoj apartigita listo de kolorvaloroj. La kolorvaloroj devas okazi aŭ en la formato #rgb/#rrggbb aŭ per CSS-kolornomo. Anstataŭ listo ankaŭ povas esti uzataj la antaŭdifinitaj kolorpaletoj category10 kaj category20.
    • scaleType: eblaj valoroj linear por lineara bildigo inter la datumaj valoroj kaj la kolorskalo, log por logaritma, pow por eksponenta (la eksponento povas esti metata poste, ekz. pow 0.5), sqrt kaj quantize por kvantigita skalo, t.e. la valoroj estas dividitaj en tiam da klasoj kiel la paleto havas kolorojn kaj tiu poste estas uzataj.
    • domainMin: Skalada minimumo, t.e. datumvaloroj sub la minimumo estas al tio alordigataj
    • domainMax: Skalada maksimumo, t.e. datumvaloroj super la maksimumo estas al tio alordigataj
    • legend: Montri kolora priskribon (ne funkcias ĉe quantize)
  • defaultValue: Norma valoro por nemarkitaj geografiaj objektoj. Se la datumvaloroj estas koloroj, la norma valoro estas silver, ĉe numeroj 0.
  • formatjson: JSON-objekto formatita por pli bona legeblo

chart

Kreas JSON-objekton por <graph> por la surekranigo de diagramoj. En la artikola nomspaco estu uzata la ŝablono {{Graph:Chart}}. Vidu ankaŭ tie por uzaj ekzemploj.

Parametroj:

  • width: Larĝo de diagramo
  • height: Alto de diagramo
  • type: Diagramtipo: line por liniodiagramoj, area por areodiagramoj, rect por kolumnodiagramoj kaj pie por cirklodiagramoj (tortodiagramoj). Per la prefikso stacked (ekz. stackedarea) pluraj serioj povas esti stakigataj.
  • interpolate: Interpolacia metodo por liniaj kaj areaj diagramoj. Rekomendata estas monotone – pliaj valoroj povas esti trovataj sur https://github.com/vega/vega/wiki/Marks#area.
  • colors: Kolorpaleto de la diagramo kiel per komoj apartigita listo de kolorvaloroj. Kolorvaloroj estas donataj en la formato #rgb/#rrggbb/#aarrggbb aŭ per CSS-kolornomoj. Ĉe #aarrggbb aa nomas la alfakanalon, t.e. FF=100% Deckkraft, 80=50% Deckkraft/duone travidebla, ktp. (La norma paleto estas category10).
  • xAxisTitle kaj yAxisTitle: Priskribo de la X- kaj Y-aksoj
  • xAxisMin, xAxisMax, yAxisMin kaj yAxisMax: Ŝanĝas la startan kaj finan valorojn de la X- resp. Y-akso
  • xAxisFormat kaj yAxisFormat: Ŝanĝas la formatigon de la aksaj nomigoj. Eblaj valoroj troveblas sur //github.com/mbostock/d3/wiki/Formatting und //github.com/mbostock/d3/wiki/Time-Formatting. Por eldoni ekzemple procentajn numerojn, la formato % povas esti uzata.
  • xType kaj yType: Datumtipoj de la valoroj, ekz. integer por Ganzzahlen, number por reelaj numeroj, date por kalendaraj datoj (ekz. en la formato JJJJ/MM/TT) kaj string por ajnaj ordinalaj valoroj.
  • x: X-valoroj kiel per komoj apartigita listo
  • y resp. y1, y2, …: Y-valoroj de unu resp. pluraj datumaj serioj. Ĉe cirklaj diagramoj y2 difinas la radiusojn de la koncernaj cirklaj partoj.
  • legend: Montru priskribon (funkcias nur ĉe pluraj datumaj serioj)
  • y1Title, y2Title, …: Nomigo de la ĉiuopa datuma serio en la priskribo
  • linewidth: Linia dikeco ĉe liniaj diagramoj resp. distanco inter la cirklaj partoj ĉe cirklaj diagramoj
  • showValues: Eldonas la Y-valorojn aldone kiel tekston. (Nuntempe estas subtenata nur de (ne stakigataj) kolumnaj kaj cirklaj diagramoj.) La eldono povas esti konfigurata per la sekvaj parametroj, kiuj estas donataj kiel Nomo1:Valoro1, Nomo2:Valoro2:
    • format: Formatas la eldonon de valoroj laŭ //github.com/mbostock/d3/wiki/Formatting#numbers por numeroj kaj //github.com/mbostock/d3/wiki/Time-Formatting por tempoinformoj
    • fontcolor: Tekstokoloro
    • fontsize: Tekstograndeco
    • offset: Ŝovas la tekston laŭ la donita Offset. Ĉe kolumnaj kaj cirklaj diagramoj (kun midangle-angula valoro) tio krome difinas, ĉu la teksto estu skribata en aŭ ekster la diagramaj grafikoj.
    • angle (nur cirklaj diagramoj): Angulo en grado aŭ midangle (normo) por dinamika angulo baziĝanta sur la angulo de la cirkla parto.
  • innerRadius: Interna radiuso por krei el cirkla diagramo ringan diagramon.
  • formatjson: Formatas JSON-objekton por pli bona legeblo

Ŝablona wrapper

La funkcioj mapWrapper kaj chartWrapper, servas nur al tio transdoni ĉiujn parametron de vokanta ŝablono al la koncernaj funkcioj map kaj chart, tiel ke la ŝablono mem ne devas fari parametran alordigon.

Atentigo: En la antaŭrigardo la Graph-funkcio kreas kanvaso-elementon kun vektora grafiko. Ĉe la konservado tamen el tio estas kreata PNG-dosiero.


Ĝeneralaj atentigoj pri la enplektado de moduloj

Enplektado okazas ĉiam en la formato

{{#invoke: Graph | Funkcionomo | valoro1 | valoro2 | nomoX=valoro … }}

La parametroj povas esti nomitaj aŭ nenomitaj kiel ĉe ŝablonoj.

Se nekonata signoĉeno venas de ekstere (kiel ŝablonaj parametroj), ĉiam estu laborata kun la formo 1=valoro.

Pliajn informojn vi trovos sur Helpo:Lua.