Informationen zu dieser Dokumentation
Vorlage Graph:Stacked [Bearbeiten]

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

Beispiele

{{Graph:Stacked

| table=Bea.gov/GDP by state.tab
| type=year | xField=year | barwidth=14
| series="TX","NY","CA"
| title=Per state GDP
}}

{{Graph:Stacked

| table=Bea.gov/GDP by state.tab
| type=year | xField=year | legend=States
| series="TX","NY","CA"
| title=Per state GDP
}}

Rohdaten anzeigen oder bearbeiten.

Rohdaten anzeigen oder bearbeiten.

{{Graph:Stacked
| 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=Paintings by decade
}}

{{Graph:Stacked
| tabletype=query | table=
SELECT   ?year  (COUNT(?_genre) AS ?count ) (SAMPLE(?_genreLabel) AS ?label ) WHERE {
  ?item wdt:P31 wd:Q11424.
  ?item wdt:P577 ?_publication_date.
  ?item wdt:P136 ?_genre.
  ?_genre rdfs:label ?_genreLabel.
  BIND(str(YEAR(?_publication_date)) AS ?year)
  FILTER((LANG(?_genreLabel)) = "en")
  
 FILTER (?_publication_date >= "2000-00-00T00:00:00Z"^^xsd:dateTime)
}
GROUP BY ?_genreLabel ?year
HAVING (?count > 30)

| type=year | xField=year | group=label | value=count | legend=-
| title=Number of films by year and genre
| xGrid=y | yGrid=y | colors="category20" | height=460 | barwidth=16
}}

Quell-Wikidata-Abfrage anzeigen.

Quell-Wikidata-Abfrage anzeigen.

Parameter

Diese Vorlage gibt eine oder mehrere unabhängige numerische Datenreihen als (gestapelte) Balken- oder Flächendiagramm 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
Mehrzeiliger Textoptional
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.

Mehrzeiliger Texterforderlich
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
Mehrzeiliger Textvorgeschlagen
X-FeldxField

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

Mehrzeiliger Texterforderlich
Datenreihenseries

Namen der als Balken- oder Flächenabschnitte darzustellenden Datenreihen. 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".

Mehrzeiliger Textoptional
Gruppegroup

Wenn die Farbe nur von einem Balken- oder Flächenabschnitt abhängt, kann dessen Id hier angegeben werden anstelle des Datenreihen-Parameters.

Mehrzeiliger Textoptional
Wertvalue

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

Mehrzeiliger Textoptional
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

Mehrzeiliger Textoptional
Balkenbreitebarwidth

Wenn gesetzt wird ein Balken- statt einem Flächendiagramm ausgegeben, wobei der Wert eine Zahl sein muss, die die Breite der Balken angibt. Wenn type=ordinal kann auch der Wert 'auto' verwendet werden.

Mehrzeiliger Textoptional
X-Achse startet mit 0xZero, xAxisZero

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

Mehrzeiliger Textoptional
Y-Achse startet mit 0yZero, yAxisZero

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

Mehrzeiliger Textoptional
X axis scale clampxAxisClamp

keine Beschreibung

Wahrheitswertoptional
Y axis scale clampyAxisClamp

keine Beschreibung

Wahrheitswertoptional
X-Achse, MinimumxMin, xAxisMin

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

Unbekanntoptional
X-Achse, MaximumxMax, xAxisMax

Erzwingt das X-Achse mit dem angegeben Wert endet.

Unbekanntoptional
Y-Achse, MinimumyMin, yAxisMin

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

Unbekanntoptional
Y-Achse, MaximumyMax, yAxisMin

Erzwingt das Y-Achse mit dem angegeben Wert endet.

Unbekanntoptional
Titeltitle

Titel des Diagramms

Mehrzeiliger Textoptional
Title horizontal alignmenttitleXAlign

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

Mehrzeiliger Textoptional
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

Zahlenwertoptional
X-Achse, TitelxAxis, xAxisTitle

Titel der X-Achse

Mehrzeiliger Textoptional
Y-Achse, TitelyAxis, yAxisTitle

Titel der Y-Achse

Mehrzeiliger Textoptional
X axis labels anglexAxisAngle

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

Zahlenwertoptional
Y axis labels angleyAxisAngle

Rotates the y axis labels by the specified angle.

Zahlenwertoptional
X axis labels font sizexAxisFontSize

keine Beschreibung

Zahlenwertoptional
Y axis labels font sizeyAxisFontSize

keine Beschreibung

Zahlenwertoptional
X-Achse, RasterxGrid

Zeigt die Hilfslinien für die X-Achse.

Wahrheitswertoptional
Y-Achse, RasteryGrid

Zeigt die Hilfslinien für die Y-Achse.

Wahrheitswertoptional
X-Achse, MarkierungsanzahlxTicks, xAxisTicks

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

Zahlenwertoptional
Y-Achse, MarkierungsanzahlyTicks, yAxisTicks

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

Zahlenwertoptional
Raw vertical annotation valuesvAnnotationsValues

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

Mehrzeiliger Textoptional
Raw horizontal annotation valueshAnnotationsValues

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

Mehrzeiliger Textoptional
Vertical annotation tablevAnnotationsTable

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

Mehrzeiliger Textoptional
Horizontal annotation tablehAnnotationsTable

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

Mehrzeiliger Textoptional
Vertical annotation data transformsvAnnotationsTransforms

keine Beschreibung

Mehrzeiliger Textoptional
Horizontal annotation data transformshAnnotationsTransforms

keine Beschreibung

Mehrzeiliger Textoptional
Legendelegend

Titel der Legende

Mehrzeiliger Textoptional
Breitewidth

keine Beschreibung

Zahlenwertoptional
Höheheight

keine Beschreibung

Zahlenwertoptional
Chart sizing modechartSizing

Chart sizing mode, could be one of: fit, pad. Vega default mode is `pad`. Use `fit` to force resulting chart canvas sizes to be exactly equal to provided width and height values. Use `pad` (or omit this parameter at all) 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)

Mehrzeiliger Textoptional
Palettecolors

Die zu verwendende Farbpalette für die Balken und Flächen. Dies kann eine Liste wie `colors = [ "red", "green" ]` oder `colors = red, green` sein.

Standard
"category10"
Mehrzeiliger Textoptional
debugdebug

Debugausgabe: wenn gesetzt wird das erzeugte JSON ausgegeben.

Mehrzeiliger Textoptional
Parameterübersetzungen bearbeiten

Siehe auch

  • {{Graph:Lines}} für automatisch generierte Liniendiagramme


<graph>
{
  //
  // ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Stacked
  //            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:Graph:Stacked
  //
  // Template translation is in https://commons.wikimedia.org/wiki/Data:Original/Template:Graphs.tab
  //

  "version": 2,
  "width": 550,
  "height": 250,

  "data": [{
    "name": "chart",

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

    },
    "transform": [
      // Convert xField parameter into a field "_xfield"
      {"type": "formula", "field": "_xfield", "expr":
"datum.{{{xField}}}"
      },
      {"type": "sort", "by": ["_xfield"]},

      // For non-bar graph, ensure that all missing values still present as zeros to avoid area breaks
      // We might need to allow other, non-0 values to be imputed.
{
        "type": "impute",
        "groupby": ["key"],
        "orderby": ["_xfield"],
        "field": "value",
        "method": "value",
        "value": 0
      },
    ]
  },

  {
    "name": "stats",
    "source": "chart",
    "transform": [{
      "type": "aggregate",
      "groupby": ["_xfield"],
      "summarize": [{"field": "value", "ops": ["sum"]}]
    }]
  }
  ],
  "scales": [
    {
      "name": "x",
      "type": "{{{type}}}",
      "domain": {"data": "chart", "field": "_xfield"},

      "range": "width",



    },
    {
      "name": "y",
      "type": "linear",
      "range": "height",
      "domain": {"data": "stats", "field": "sum_value"},



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

  ],

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


},
    {"scale": "y", "type": "y", "tickSizeEnd": 0
// When drawing "type=year" bars with the given width, shift y axis left by half the width




}
  ],

  "marks": [
    // Group data by the "key", and draw lines, one line per key
    {
"type": "group",
      "from": {
        "data": "chart",
        "transform": [
          {"type": "stack", "groupby": ["_xfield"], "sortby": ["key"], "field": "value"},
          {"type": "facet", "groupby": ["key"]}
        ]
      },
      "marks": [
        {
          "type": "area",
          "properties": {
            "enter": {
              "x": {"scale": "x", "field": "_xfield"},
              "y": {"scale": "y", "field": "layout_start"},
              "y2": {"scale": "y", "field": "layout_end"},
              "fill": {"scale": "color", "field": "key"},
              "interpolate": {"value": "monotone"}
            }
          }
        }
      ],
    }


  ]
}
</graph>