Vorlage:Graph:Lines
Wikipedia.de Vorlage: Graph:Lines
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 | xField=year | series="age_16_24", "age_25_34", "age_35_44", "age_45_54" | title=Geschlechtsspezifisches Lohngefälle in den USA | xAxis=Year | yAxis=Percentage | yMax=100 | yGrid=y | legend=Altersgruppe
}} |
|
<graph> { // // 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": 500, "height": 300, "padding": "strict", "signals": [{"name": "rightwidth", "expr": "width + padding.right"}],
"data": [{
"name": "chart",
"url": "tabular:///bls.gov/US Women's weekly earnings as a percent of men's by age, annual averages.tab", "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": "fold", "fields": ["age_16_24", "age_25_34", "age_35_44", "age_45_54"]} ] }, { "name": "labels",
"url": "tabular:///bls.gov/US Women's weekly earnings as a percent of men's by age, annual averages.tab",
"format": {"type": "json", "property": "fields"}
}
],
"scales": [
{
"name": "x",
"type": "time",
"domain": {"data": "chart", "field": "_xfield"},
"range": "width",
},
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "chart", "field": "value"},
"zero": false, "domainMax": 100, },
{
"name": "color",
"type": "ordinal",
"domain": {"data": "chart", "field": "key"},
"range": "category10"
},
{ "name": "labels",
"type": "ordinal",
"domain": {"data": "labels", "field": "name"}, "range": {"data": "labels", "field": "title"},
}
],
"legends": [{ "fill": "color", "stroke": "color", "title": "Altersgruppe", "properties": { "labels": { "text": {"scale": "labels", "field": "data"} } } }],
"axes": [
{"scale": "x", "type": "x", "tickSizeEnd": 0
, "ticks": 7 , "title": "Jahr" }, {"scale": "y", "type": "y", "tickSizeEnd": 0
, "title": "Prozent" , "grid": true } ], "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": {
"enter": {
"y": {"scale": "y", "field": "value"},
"x": {"scale": "x", "field": "_xfield"},
"stroke": {"scale": "color", "field": "key"},
"interpolate": {"value": "linear"},
"strokeWidth": {"value": 2.5}
}
}
}
],
}
// Draw title at the top of the graph , { "type": "text",
"properties": {
"enter": {
"x": {"signal": "rightwidth", "mult": 0.5},
"y": {"value": -15},
"text": {"value": "Geschlechtsspezifisches Lohngefälle in den USA"},
"fontWeight": {"value": "bold"},
"align": {"value": "center"},
"baseline": {"value": "bottom"},
"fill": {"value": "#000"}
}
}
}
]
} </graph> 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
|
type=year | xField=decade | title=Gemälde nach Jahrzehnt
}} | |
|
<graph> { // // 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"}],
"data": [{
"name": "chart",
"url": "wikidatasparql:///?query=SELECT%20%3Fdecade%20%28COUNT%28%3Fdecade%29%20AS%20%3Fcount%29%20WHERE%20%7B%0A%20%20%3Fitem%20wdt%3AP31%20wd%3AQ3305213%20.%0A%20%20%3Fitem%20wdt%3AP571%20%3Finception%20.%0A%20%20BIND%28%20year%28%3Finception%29%20as%20%3Fyear%20%29.%20%0A%20%20BIND%28%20ROUND%28%3Fyear%2F10%29%2A10%20as%20%3Fdecade%20%29%20.%0A%20%20FILTER%28%20%3Fyear%20%3E%201400%29%0A%7D%20GROUP%20BY%20%3Fdecade%20ORDER%20BY%20%3Fdecade", "format": {"type": "json"
},
"transform": [
// Convert xField parameter into a field "_xfield"
{"type": "formula", "field": "_xfield", "expr":
"datetime(datum.decade, 0, 1)" },
{"type": "sort", "by": ["_xfield"]},
{"type": "fold", "fields": ["count"]} ] }, ],
"scales": [
{
"name": "x",
"type": "time",
"domain": {"data": "chart", "field": "_xfield"},
"range": "width",
},
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "chart", "field": "value"},
},
{
"name": "color",
"type": "ordinal",
"domain": {"data": "chart", "field": "key"},
"range": "category10"
},
{ "name": "labels",
"type": "ordinal",
"domain": ["count"], "range": ["count"], } ], "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": {
"enter": {
"y": {"scale": "y", "field": "value"},
"x": {"scale": "x", "field": "_xfield"},
"stroke": {"scale": "color", "field": "key"},
"interpolate": {"value": "linear"},
"strokeWidth": {"value": 2.5}
}
}
}
],
}
// Draw title at the top of the graph , { "type": "text",
"properties": {
"enter": {
"x": {"signal": "rightwidth", "mult": 0.5},
"y": {"value": -15},
"text": {"value": "Gemälde nach Jahrzehnt"},
"fontWeight": {"value": "bold"},
"align": {"value": "center"},
"baseline": {"value": "bottom"},
"fill": {"value": "#000"}
}
}
}
]
} </graph> 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". }
}
|
xField=year | group=countryLabel | value=population | title=Bevölkerungszahl der Nachbarländer Deutschlands | xGrid=y | yGrid=y | yTicks=7 | width=600
}} |
|
<graph> { // // 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": 600, "height": 300, "padding": "strict", "signals": [{"name": "rightwidth", "expr": "width + padding.right"}],
"data": [{
"name": "chart",
"url": "wikidatasparql:///?query=%23Population%20of%20countries%20sharing%20a%20border%20with%20Germany%0ASELECT%20%3Fyear%20%3Fpopulation%20%3FcountryLabel%20WHERE%20%7B%0A%20%20%7B%0A%20%20%20%20SELECT%20%3Fcountry%20%3Fyear%20%28AVG%28%3Fpopulations%29%20AS%20%3Fpopulation%29%20WHERE%20%7B%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20SELECT%20%3Fcountry%20%28YEAR%28%3Fdate%29%20AS%20%3Fyear%29%20%3Fpopulations%20WHERE%20%7B%0A%20%20%20%20%20%20%20%20%20%20%3Fcountry%20wdt%3AP47%20wd%3AQ183.%0A%20%20%20%20%20%20%20%20%20%20%3Fcountry%20p%3AP1082%20%3FpopulationStatement.%0A%20%20%20%20%20%20%20%20%20%20%3FpopulationStatement%20ps%3AP1082%20%3Fpopulations.%0A%20%20%20%20%20%20%20%20%20%20%3FpopulationStatement%20pq%3AP585%20%3Fdate.%0A%20%20%20%20%20%20%20%20%20%20%3Fcountry%20wdt%3AP31%20wd%3AQ3624078.%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%20%20GROUP%20BY%20%3Fcountry%20%3Fyear%0A%20%20%7D%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%7D", "format": {"type": "json"
},
"transform": [
// Convert xField parameter into a field "_xfield"
{"type": "formula", "field": "_xfield", "expr":
"datetime(datum.year, 0, 1)" },
{"type": "sort", "by": ["_xfield"]},
] }, ],
"scales": [
{
"name": "x",
"type": "time",
"domain": {"data": "chart", "field": "_xfield"},
"range": "width",
},
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "chart", "field": "population"},
},
{
"name": "color",
"type": "ordinal",
"domain": {"data": "chart", "field": "countryLabel"},
"range": "category10"
},
], "legends": [{ "fill": "color", "stroke": "color",
}],
"axes": [
{"scale": "x", "type": "x", "tickSizeEnd": 0
, "ticks": 7 , "grid": true }, {"scale": "y", "type": "y", "tickSizeEnd": 0
, "ticks": 7 , "grid": true } ], "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": ["countryLabel"]}]
},
"marks": [
{
"type": "line",
"properties": {
"enter": {
"y": {"scale": "y", "field": "population"},
"x": {"scale": "x", "field": "_xfield"},
"stroke": {"scale": "color", "field": "countryLabel"},
"interpolate": {"value": "linear"},
"strokeWidth": {"value": 2.5}
}
}
}
],
}
// Draw title at the top of the graph , { "type": "text",
"properties": {
"enter": {
"x": {"signal": "rightwidth", "mult": 0.5},
"y": {"value": -15},
"text": {"value": "Bevölkerungszahl der Nachbarländer Deutschlands"},
"fontWeight": {"value": "bold"},
"align": {"value": "center"},
"baseline": {"value": "bottom"},
"fill": {"value": "#000"}
}
}
}
]
} </graph> 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.
| Parameter | Beschreibung | Typ | Status | |
|---|---|---|---|---|
| Tabellentyp | tabletype | 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.
| Mehrzeiliger Text | optional |
| Tabelle | table | 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 Text | erforderlich |
| Typ der X-Achse | type | Typ der X-Achse - time (z.B. "2015-10" oder "2013-03-08"), year (Ganzzahl die als Jahr behandelt wird), linear (Zahlen), ordinal (Sonstiges).
| Mehrzeiliger Text | vorgeschlagen |
| X-Feld | xField | Id der Datenspalte die Werte der X-Achse enthält. Wenn type=year dann ist xField standardmäßig auch "year". | Mehrzeiliger Text | erforderlich |
| Datenreihen | series | 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". | Mehrzeiliger Text | optional |
| Gruppe | group | Wenn die Linienfarbe nur von einer Spalte abhängt, kann deren Id hier angegeben werden anstelle des Datenreihen-Parameters. | Mehrzeiliger Text | optional |
| Wert | value | Wenn die Linienfarbe nur von einer Spalte abhängt, kann hier die Spalte mit den Werten angegeben werden. | Mehrzeiliger Text | optional |
| Filter | filter | 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 Text | optional |
| X-Achse startet mit 0 | xAxisZero, xZero | Erzwingt, ob die X-Achse mit dem Nullwert anfängt ("true") oder nicht ("false"). | Mehrzeiliger Text | optional |
| Y-Achse startet mit 0 | yAxisZero, yZero | Erzwingt, ob die Y-Achse mit dem Nullwert anfängt ("true") oder nicht ("false"). | Mehrzeiliger Text | optional |
| X axis scale clamp | xAxisClamp | Épingle sur l'échelle de l'axe X. Les courbes au delà de cette épingle seront cachées. | Wahrheitswert | optional |
| Y axis scale clamp | yAxisClamp | Épingle sur l'échelle de l'axe Y. Les courbes au delà de cette épingle seront cachées. | Wahrheitswert | optional |
| X-Achse, Minimum | xAxisMin, xMin | Erzwingt das X-Achse mit dem angegeben Wert anfängt. | Zahlenwert | optional |
| X-Achse, Maximum | xAxisMax, xMax | Erzwingt das X-Achse mit dem angegeben Wert endet. | Zahlenwert | optional |
| Y-Achse, Minimum | yAxisMin, yMin | Erzwingt das Y-Achse mit dem angegeben Wert anfängt. | Zahlenwert | optional |
| Y-Achse, Maximum | yAxisMax, yMax | Erzwingt das Y-Achse mit dem angegeben Wert endet. | Zahlenwert | optional |
| Y axis scale | yScale | Set Y axis scaling type - linear, log and sqrt.
| Mehrzeiliger Text | optional |
| Replace zero values | replaceZerosWith | Replaces 0 values in Y data field. Recommended to be use alongside with yScale=log (else zeros will be filtered out). | Zahlenwert | optional |
| Titel | title | Titel des Diagramms. | Mehrzeiliger Text | optional |
| Title horizontal alignment | titleXAlign | Horizontal alignment of title, could be one of: left, center, right | Mehrzeiliger Text | optional |
| Title horizontal offset | titleXOffset | Horizontal offset of title position, could be negative, to shift title to the left, or positive to shift title to the right | Zahlenwert | optional |
| X-Achse, Titel | xAxisTitle | Titel der X-Achse. | Mehrzeiliger Text | optional |
| Y-Achse, Titel | yAxisTitle | Titel der Y-Achse. | Mehrzeiliger Text | optional |
| X axis format | xAxisFormat | Changes the formatting of the X axis labels
| Mehrzeiliger Text | optional |
| Y axis format | yAxisFormat | Changes the formatting of the Y axis labels
| Mehrzeiliger Text | optional |
| X axis labels angle | xAxisAngle | Rotates the x axis labels by the specified angle. Recommended values are: -45, +45, -90, +90. | Zahlenwert | optional |
| Y axis labels angle | yAxisAngle | Rotates the y axis labels by the specified angle. | Zahlenwert | optional |
| X axis labels font size | xAxisFontSize | keine Beschreibung | Zahlenwert | optional |
| Y axis labels font size | yAxisFontSize | keine Beschreibung | Zahlenwert | optional |
| X-Achse, Raster | xGrid | Zeigt die Hilfslinien für die X-Achse. | Wahrheitswert | optional |
| Y-Achse, Raster | yGrid | Zeigt die Hilfslinien für die Y-Achse. | Wahrheitswert | optional |
| X-Achse, Markierungsanzahl | xTicks, xAxisTicks | Wie viele Markierungen sollen an der X-Achse gezeigt werden. '-' ermittelt die Anzahl automatisch.
| Zahlenwert | optional |
| Y-Achse, Markierungsanzahl | yTicks, yAxisTicks | Wie viele Markierungen sollen an der Y-Achse gezeigt werden. Standardmäßig auf automatisch '-' gesetzt.
| Zahlenwert | optional |
| Raw vertical annotation values | vAnnotationsValues | Supply all annotation values as a list of JSON objects: {"text": "Big event", "x": 1980}, ... | Mehrzeiliger Text | optional |
| Raw horizontal annotation values | hAnnotationsValues | Supply all horizontal annotation values as a list of JSON objects: {"text":"Big event", "y": 980}, ... | Mehrzeiliger Text | optional |
| Vertical annotation table | vAnnotationsTable | Data page name on Commons, without the Data: prefix. The table must contain "x" column, and optional "text" and "color" columns. | Mehrzeiliger Text | optional |
| Horizontal annotation table | hAnnotationsTable | Data page name on Commons, without the Data: prefix. The table must contain "y" column, and optional "text" and "color" columns. | Mehrzeiliger Text | optional |
| Vertical annotation data transforms | vAnnotationsTransforms | keine Beschreibung | Mehrzeiliger Text | optional |
| Horizontal annotation data transforms | hAnnotationsTransforms | keine Beschreibung | Mehrzeiliger Text | optional |
| Legende | legend | Titel der Legende. | Mehrzeiliger Text | optional |
| Breite | width | keine Beschreibung | Zahlenwert | optional |
| Höhe | height | keine Beschreibung | Zahlenwert | optional |
| Chart sizing mode | chartSizing | 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)
| Mehrzeiliger Text | optional |
| Palette | colors | Die zu verwendende Farbpalette für die Linien. Dies kann eine Liste wie red, green sein. | Mehrzeiliger Text | optional |
| Palette prédéfinie | colorscheme | Die zu verwendende Farbpalette für die Linien.
| Mehrzeiliger Text | optional |
| Line width | linewidth | Line width for line charts or distance between the pie segments for pie charts.
| Zahlenwert | optional |
| Debug | debug | Debugausgabe: wenn gesetzt wird das erzeugte JSON ausgegeben. | Mehrzeiliger Text | optional |
Parameterübersetzungen bearbeiten
Siehe auch
- {{Graph:Stacked}} für automatisch generierte Balkendiagramme
Werkzeuge
<graph>
{
//
// 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"}],
"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"]},
]
},
],
"scales": [
{
"name": "x",
"type": "time",
"domain": {"data": "chart", "field": "_xfield"},
"range": "width",
},
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "chart", "field": "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
}
],
"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": {
"enter": {
"y": {"scale": "y", "field": "value"},
"x": {"scale": "x", "field": "_xfield"},
"stroke": {"scale": "color", "field": "key"},
"interpolate": {"value": "linear"},
"strokeWidth": {"value": 2.5}
}
}
}
],
}
]
}
</graph>