Vorlage:Graph:Lines

Aus Wikibooks
Zur Navigation springen Zur Suche springen

Informationen zu dieser Dokumentation
Vorlage Graph:Lines [Bearbeiten]

Info:Die Hauptversion dieser Vorlage befindet sich unter Template:Graph:Lines. Änderungswünsche sollten daher dort angefragt und durchgeführt und die Änderungen dann an die lokalen Kopien manuell verteilt werden.

Dieser Vorlage erlaubt die grafische Darstellung von tabellarischen Commons-Datensätzen oder aus Wikidata mittels des Wikidata-Abfragedienstes (https://query.wikidata.org/) in SPARQL-Syntax.

Beispiele

{{Graph:Lines
| table=bls.gov/US Women's weekly earnings as a percent of men's by age, annual averages.tab
| type=year | xField=year
| series="age_16_24", "age_25_34", "age_35_44", "age_45_54"
| title=Geschlechtsspezifisches Lohngefälle in den USA
| yZero=false | xAxis=Year | yAxis=Percentage | yMax=100 | yGrid=y | legend=Altersgruppe
}}

Rohdaten anzeigen oder bearbeiten.


{{Graph:Lines
| tabletype=query
| table=
SELECT ?decade (COUNT(?decade) AS ?count) 
WHERE {
  ?item wdt:P31 wd:Q3305213 .
  ?item wdt:P571 ?inception .
  BIND( year(?inception) as ?year ). 
  BIND( ROUND(?year/10)*10 as ?decade ) .
  FILTER( ?year > 1400)
} 
GROUP BY ?decade ORDER BY ?decade
| series="count" | type=year | xField=decade
| title=Gemälde nach Jahrzehnt
}}

Quell-Wikidata-Abfrage anzeigen.


Wikidata query produces three columns - year, population size, and country name. This graph shows one line per country.
{{Graph:Lines
| tabletype=query
| table=
#Population of countries sharing a border with Germany
SELECT ?year ?population ?countryLabel 
WHERE {
  {
    SELECT ?country ?year (AVG(?populations) AS ?population) WHERE {
      {
        SELECT ?country (YEAR(?date) AS ?year) ?populations WHERE {
          ?country wdt:P47 wd:Q183.
          ?country p:P1082 ?populationStatement.
          ?populationStatement ps:P1082 ?populations.
          ?populationStatement pq:P585 ?date.
          ?country wdt:P31 wd:Q3624078.
        }
      }
    }
    GROUP BY ?country ?year
  }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
| type=year | xField=year | group=countryLabel | value=population
| title=Bevölkerungszahl der Nachbarländer Deutschlands
| legend=- | xGrid=y | yGrid=y | yTicks=7 | width=600
}}

Quell-Wikidata-Abfrage anzeigen.

Parameter

Diese Vorlage gibt eine oder mehrere unabhängige numerische Datenreihen als Liniendiagramm aus. Die Daten müssen entweder aus dem Commons-Data-Namensraum oder dem Wikidata-Abfragedienst kommen.

Vorlagenparameter

ParameterBeschreibungTypStatus
Tabellentyptabletype

Gibt den Typ der Tabellendaten an. "tab" (Standard) verwendet den Data-Namensraum von Commons ohne den data:-Präfix. "query" sendet eine Abfrage an den Wikidata-Abfragedienst.

Standard
tab
Zeichenfolgeoptional
Tabelletable

Name der Datenseite auf Commons ohne den data:-Präfix. Die Tabelle sollte eine xField-Spalte besitzen, sowie eine oder mehrere weitere Spalten die als Datenreihen dargestellt werden. Wenn der tableType-Parameter "query" ist dann wird hier die Abfrage eingetragen.

Zeichenfolgeerforderlich
Typ der X-Achsetype

Typ der X-Achse - time (z.B. "2015-10" oder "2013-03-08"), year (Ganzzahl die als Jahr behandelt wird), linear (Zahlen), ordinal (Sonstiges).

Standard
year
Zeichenfolgevorgeschlagen
X-FeldxField

Id der Datenspalte die Werte der X-Achse enthält. Wenn type=year dann ist xField standardmäßig auch "year".

Zeichenfolgeerforderlich
Datenreihenseries

Namen der Spalten die die Datenreihen enthalten. Diese müssen in Anführungszeichen gesetzt werden und durch ihre Feld-Ids wie sie auf der .tab-Seite angegeben sind referenziert werden: "field1", "field2", "field3".

Zeichenfolgeoptional
Gruppegroup

Wenn die Linienfarbe nur von einer Spalte abhängt, kann deren Id hier angegeben werden anstelle des Datenreihen-Parameters.

Zeichenfolgeoptional
Wertvalue

Wenn die Linienfarbe nur von einer Spalte abhängt, kann hier die Spalte mit den Werten angegeben werden.

Zeichenfolgeoptional
Filterfilter

Optionally filter data with an template expression parameter e.g. `filter = datum.some_dataset_field > 1900 && datum.some_dataset_field < 2000` where `some_dataset_field` means some valid field of displayed dataset

Zeichenfolgeoptional
X-Achse startet mit 0xAxisZero, xZero

Erzwingt, ob die X-Achse mit dem Nullwert anfängt ("true") oder nicht ("false").

Zeichenfolgeoptional
Y-Achse startet mit 0yAxisZero, yZero

Erzwingt, ob die Y-Achse mit dem Nullwert anfängt ("true") oder nicht ("false").

Zeichenfolgeoptional
X axis scale clampxAxisClamp

Épingle sur l'échelle de l'axe X. Les courbes au delà de cette épingle seront cachées.

Booleschoptional
Y axis scale clampyAxisClamp

Épingle sur l'échelle de l'axe Y. Les courbes au delà de cette épingle seront cachées.

Booleschoptional
X-Achse, MinimumxAxisMin, xMin

Erzwingt das X-Achse mit dem angegeben Wert anfängt.

Nummeroptional
X-Achse, MaximumxAxisMax, xMax

Erzwingt das X-Achse mit dem angegeben Wert endet.

Nummeroptional
Y-Achse, MinimumyAxisMin, yMin

Erzwingt das Y-Achse mit dem angegeben Wert anfängt.

Nummeroptional
Y-Achse, MaximumyAxisMax, yMax

Erzwingt das Y-Achse mit dem angegeben Wert endet.

Nummeroptional
Y axis scaleyScale

Set Y axis scaling type - linear, log and sqrt.

Standard
linear
Zeichenfolgeoptional
Replace zero valuesreplaceZerosWith

Replaces 0 values in Y data field. Recommended to be use alongside with yScale=log (else zeros will be filtered out).

Nummeroptional
Titeltitle

Titel des Diagramms.

Zeichenfolgeoptional
Title horizontal alignmenttitleXAlign

Horizontal alignment of title, could be one of: left, center, right

Zeichenfolgeoptional
Title horizontal offsettitleXOffset

Horizontal offset of title position, could be negative, to shift title to the left, or positive to shift title to the right

Nummeroptional
X-Achse, TitelxAxisTitle

Titel der X-Achse.

Zeichenfolgeoptional
Y-Achse, TitelyAxisTitle

Titel der Y-Achse.

Zeichenfolgeoptional
X axis formatxAxisFormat

Changes the formatting of the X axis labels

Standard
%b %y (for dates)
Zeichenfolgeoptional
Y axis formatyAxisFormat

Changes the formatting of the Y axis labels

Standard
,d (for numbers)
Zeichenfolgeoptional
X axis labels anglexAxisAngle

Rotates the x axis labels by the specified angle. Recommended values are: -45, +45, -90, +90.

Nummeroptional
Y axis labels angleyAxisAngle

Rotates the y axis labels by the specified angle.

Nummeroptional
X axis labels font sizexAxisFontSize

keine Beschreibung

Nummeroptional
Y axis labels font sizeyAxisFontSize

keine Beschreibung

Nummeroptional
X-Achse, RasterxGrid

Zeigt die Hilfslinien für die X-Achse.

Booleschoptional
Y-Achse, RasteryGrid

Zeigt die Hilfslinien für die Y-Achse.

Booleschoptional
X-Achse, MarkierungsanzahlxTicks, xAxisTicks

Wie viele Markierungen sollen an der X-Achse gezeigt werden. '-' ermittelt die Anzahl automatisch.

Standard
7
Nummeroptional
Y-Achse, MarkierungsanzahlyTicks, yAxisTicks

Wie viele Markierungen sollen an der Y-Achse gezeigt werden. Standardmäßig auf automatisch '-' gesetzt.

Standard
-
Nummeroptional
Raw vertical annotation valuesvAnnotationsValues

Supply all annotation values as a list of JSON objects: {"text": "Big event", "x": 1980}, ...

Zeichenfolgeoptional
Raw horizontal annotation valueshAnnotationsValues

Supply all horizontal annotation values as a list of JSON objects: {"text":"Big event", "y": 980}, ...

Zeichenfolgeoptional
Vertical annotation tablevAnnotationsTable

Data page name on Commons, without the Data: prefix. The table must contain "x" column, and optional "text" and "color" columns.

Zeichenfolgeoptional
Horizontal annotation tablehAnnotationsTable

Data page name on Commons, without the Data: prefix. The table must contain "y" column, and optional "text" and "color" columns.

Zeichenfolgeoptional
Vertical annotation data transformsvAnnotationsTransforms

keine Beschreibung

Zeichenfolgeoptional
Horizontal annotation data transformshAnnotationsTransforms

keine Beschreibung

Zeichenfolgeoptional
Legendelegend

Titel der Legende.

Zeichenfolgeoptional
Breitewidth

keine Beschreibung

Nummeroptional
Höheheight

keine Beschreibung

Nummeroptional
Chart sizing modechartSizing

Chart sizing mode, could be one of: fit, pad. Use `fit` to force resulting chart canvas sizes to be exactly equal to provided width and height values. Use `pad` to define prefered plotting size with provided width and height values, and let Vega increase overall chart size to include legend and title (if any)

Standard
fit
Zeichenfolgeoptional
Palettecolors

Die zu verwendende Farbpalette für die Linien. Dies kann eine Liste wie red, green sein.

Zeichenfolgeoptional
Palette prédéfiniecolorscheme

Die zu verwendende Farbpalette für die Linien.

Standard
category10
Zeichenfolgeoptional
Line widthlinewidth

Line width for line charts or distance between the pie segments for pie charts.

Standard
2.5
Nummeroptional
Debugdebug

Debugausgabe: wenn gesetzt wird das erzeugte JSON ausgegeben.

Zeichenfolgeoptional
Parameterübersetzungen bearbeiten

Siehe auch



<graph mode="interactive" title="">
{
  //
  // ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Lines
  //            Please do not modify it anywhere else, as it may get copied and override your changes.
  //            Suggestions can be made at https://www.mediawiki.org/wiki/Template_talk:Graph:Lines
  //
  // Template translation is in https://commons.wikimedia.org/wiki/Data:Original/Template:Graphs.tab
  //

  "version": 2,
  "width": 400,
  "height": 300,
"padding": "strict",
  "signals": [{"name": "rightwidth", "expr": "width + padding.right", "init":"400"}],
  "data": [{
    "name": "chart",

"url": "tabular:///{{{table}}}",
    "format": {"type": "json"
, "property": "data"

    },
    "transform": [


      // Convert xField parameter into a field "_xfield"
      {"type": "formula", "field": "_xfield", "expr":
"datetime(datum.year, 0, 1)"
      }
      , {"type": "sort", "by": ["_xfield"]}

, {"type": "formula", "field": "_yfield", "expr": "datum.value" }

    ]
  },

  ],
  "scales": [
    {
      "name": "x",
      "type": "time",
      "domain": {"data": "chart", "field": "_xfield"},
      "range": "width",
      

      
    },
    {
      "name": "y",
      "type": "linear",
      "range": "height",
      "domain": {"data": "chart", "field": "_yfield"},
      
      
      
      
    },
    {
      "name": "color",
      "type": "ordinal",
      "range": "category10", 
      "domain": {"data": "chart", "field": "key"}
    },

  ],

  "axes": [
    {"scale": "x", "type": "x", "tickSizeEnd": 0
, "ticks": 7




    },
    {"scale": "y", "type": "y", "tickSizeEnd": 0





    }
  ],

  "marks": [
    // Group data by the group parameter or "key", and draw lines, one line per group
    {
      "type": "group",
      "from": {
        "data": "chart",
        "transform": [{"type": "facet", "groupby": ["key"]}]
      },
      "marks": [
        {
          "type": "line",
          "properties": {
            "hover": {
              "stroke": {"value": "red"}
            },
            "update": {
              "stroke": {"scale": "color", "field": "key"}
            },
            "enter": {
              "y": {"scale": "y", "field": "_yfield"},
              "x": {"scale": "x", "field": "_xfield"},
              "stroke": {"scale": "color", "field": "key"},
              "interpolate": {"value": "monotone"},
              "strokeWidth": {"value": 2.5}
            }
          }
        }
      ],
    }


  ]
}
</graph>