تضامنًا مع حق الشعب الفلسطيني |
قالب:Graph:Population history
هذا القالب يستعمل لوا: |
This graph's main version resides at mediawiki Template:Graph:Population_history. Please make all the changes there and copy it everywhere else (until the copying is automated)
استعمال
{{Graph:Population history | debug = | width = | height = | table = | values = | 1 = | filter = | atable = | avalues = | scale = | max = | orient = | color = | interpolate = | title = }}
{{Graph:Population history|Q84}} Show London's population history from Wikidata |
---|
<graph>
{ // // ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Population_history // 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:Population_history // "version": 2, "width": 400, "height": 200, // The population data could be from Commons dataset, Wikidata, or hardcoded values "data": [ { "name": "table", "url": "wikidatasparql:///?query=SELECT%20%28MAX%28%3Fpopulation%29%20as%20%3Fpopulation%29%20%3Fyear%20WHERE%20%7B%0A%20%20%20%20%23%20set%20the%20item%20here%20-%20e.g.%20city%2C%20country%0A%09BIND%28wd%3AQ84%20as%20%3Fitem%29%0A%20%20%20%20%3Fitem%20p%3AP1082%20%3Fpopstatement%20.%0A%20%20%20%20%3Fpopstatement%20ps%3AP1082%20%3Fpopulation%20.%0A%20%20%20%20OPTIONAL%20%7B%0A%20%20%20%20%20%20%3Fpopstatement%20pq%3AP585%20%3Fdate%20.%0A%20%20%20%20%20%20BIND%28year%28%3Fdate%29%20as%20%3Fyear%29%0A%20%20%20%20%7D%0A%7D%20GROUP%20BY%20%3Fyear%20ORDER%20BY%20ASC%28%3Fyear%29", "format": { "type": "json" }, // Convert year integer (2016) into a date object (2016-01-01) "transform": [ // Optionally filter data with an template expression parameter // e.g. filter = datum.year > 1900 && datum.year < 2000 { "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" } ] }, // Each annotation is expected to be an integer year, string text, // and optional string color (e.g. "#4d2800") { "name": "annotations", "values": [], "transform": [ { "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" }, { "type": "formula", "field": "color", "expr": "datum.color||'#000'" } ] } ], "scales": [ // The dates are scaled to the "x" axis - the width of the graph { "name": "x", "type": "time", "range": "width", "domain": {"data": "table","field": "date"} }, // The population are scaled to the "y" axis - the height of the graph // Optional scale parameter can change "linear" to other scales like log // Optional max parameter can fix the upper bound of the graph { "name": "y", "type": "linear", "range": "height", "domain": {"data": "table","field": "population"}, "clamp": true, "nice": true } ], // Simple axis with horizontal grid lines "axes": [ {"type": "x", "scale": "x", "ticks": 5}, {"type": "y", "scale": "y", "ticks": 5, "grid": true, "orient":"right"} ], // The graph is drawn with two elements a thick line at the top, // and a semi-transparent area below "marks": [ { "type": "area", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x", "field": "date"}, "y": {"scale": "y", "value": 0}, "y2": {"scale": "y", "field": "population"}, "fill": {"value": "#99B2CC"}, "fillOpacity": {"value": 0.35}, "interpolate": {"value": "monotone"} } } }, // If annotations are given, draw dashed line with associated text { "type": "rule", "from": {"data": "annotations"}, "properties": { "enter": { "x": {"scale": "x", "field":"date"}, "y": {"value": 0}, "y2": {"signal": "height"}, "stroke": {"field": "color"}, "strokeWidth": {"value": 2}, "opacity": {"value": 0.6}, "strokeDash": {"value": [8,3]} } } }, { "type": "line", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x","field": "date"}, "y": {"scale": "y","field": "population"}, "stroke": {"value": "#99B2CC"}, "strokeWidth": {"value": 3}, "interpolate": {"value": "monotone"} } } }, // The small white circles should be drawn after annotations but before text { "type": "symbol", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x","field": "date"}, "y": {"scale": "y","field": "population"}, "stroke": {"value": "#99B2CC"}, "fill": {"value": "#fff"}, "size": {"value": 30} } } }, // Annotation text { "type": "text", "from": {"data": "annotations"}, "properties": { "enter": { "x": {"scale": "x", "field":"date"}, "y": {"value": 0}, "align": {"value": "right"}, "baseline": {"value": "bottom"}, "angle": {"value": 270}, "dx": {"value": -4}, "dy": {"value": -2}, "text": {"field": "text"}, "stroke": {"field": "color"} } } } ] } </graph> |
{{Graph:Population history | table=Wikidata/St.Petersburg.tab |
<graph>
{ // // ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Population_history // 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:Population_history // "version": 2, "width": 400, "height": 200, // The population data could be from Commons dataset, Wikidata, or hardcoded values "data": [ { "name": "table", "url": "tabular:///Wikidata/St.Petersburg.tab", "format": {"type": "json", "property": "data"}, // Convert year integer (2016) into a date object (2016-01-01) "transform": [ // Optionally filter data with an template expression parameter // e.g. filter = datum.year > 1900 && datum.year < 2000 { "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" } ] }, // Each annotation is expected to be an integer year, string text, // and optional string color (e.g. "#4d2800") { "name": "annotations", "url": "tabular:///Original/St.Petersburg population annotations.tab", "format": {"type": "json", "property": "data"}, "transform": [ { "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" }, { "type": "formula", "field": "color", "expr": "datum.color||'#000'" } ] } ], "scales": [ // The dates are scaled to the "x" axis - the width of the graph { "name": "x", "type": "time", "range": "width", "domain": {"data": "table","field": "date"} }, // The population are scaled to the "y" axis - the height of the graph // Optional scale parameter can change "linear" to other scales like log // Optional max parameter can fix the upper bound of the graph { "name": "y", "type": "linear", "range": "height", "domain": {"data": "table","field": "population"}, "clamp": true, "nice": true } ], // Simple axis with horizontal grid lines "axes": [ {"type": "x", "scale": "x", "ticks": 5}, {"type": "y", "scale": "y", "ticks": 5, "grid": true, "orient":"right"} ], // The graph is drawn with two elements a thick line at the top, // and a semi-transparent area below "marks": [ { "type": "area", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x", "field": "date"}, "y": {"scale": "y", "value": 0}, "y2": {"scale": "y", "field": "population"}, "fill": {"value": "#99B2CC"}, "fillOpacity": {"value": 0.35}, "interpolate": {"value": "monotone"} } } }, // If annotations are given, draw dashed line with associated text { "type": "rule", "from": {"data": "annotations"}, "properties": { "enter": { "x": {"scale": "x", "field":"date"}, "y": {"value": 0}, "y2": {"signal": "height"}, "stroke": {"field": "color"}, "strokeWidth": {"value": 2}, "opacity": {"value": 0.6}, "strokeDash": {"value": [8,3]} } } }, { "type": "line", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x","field": "date"}, "y": {"scale": "y","field": "population"}, "stroke": {"value": "#99B2CC"}, "strokeWidth": {"value": 3}, "interpolate": {"value": "monotone"} } } }, // The small white circles should be drawn after annotations but before text { "type": "symbol", "from": {"data": "table"}, "properties": { "enter": { "x": {"scale": "x","field": "date"}, "y": {"scale": "y","field": "population"}, "stroke": {"value": "#99B2CC"}, "fill": {"value": "#fff"}, "size": {"value": 30} } } }, // Annotation text { "type": "text", "from": {"data": "annotations"}, "properties": { "enter": { "x": {"scale": "x", "field":"date"}, "y": {"value": 0}, "align": {"value": "right"}, "baseline": {"value": "bottom"}, "angle": {"value": 270}, "dx": {"value": -4}, "dy": {"value": -2}, "text": {"field": "text"}, "stroke": {"field": "color"} } } } ] } </graph> |
Inserts a graph with the population history for the given city.
وسيط | وصف | نوع | حالة | |
---|---|---|---|---|
City Wikidata ID | 1 | Wikidata ID of the city or region
| نص | اختياري |
Title of the data page on Commons | table | Data page name on Commons, without the Data: prefix. The table must contain "year" and "population" columns. | نص | اختياري |
Raw values for this graph | values | Supply all values as a list of JSON objects: {"year":1980, "population":1000}, {"year":1984, "population":1045}, ... | غير معروف | اختياري |
Title of the annotations data page on Commons | atable | Data page name on Commons, without the Data: prefix. The table must contain "year" column, and optional "text" and "color" columns. | نص | اختياري |
Raw annotation values | avalues | Supply all annotation values as a list of JSON objects: {"year":1980, "text":"Big event"}, ... | غير معروف | اختياري |
Filter expression | filter | Optionally, filter the data with an expression, e.g. datum.year >= 1900 && datum.year < 2000 | غير معروف | اختياري |
Graph color | color | Shade with which to highlight the data in the chart
| نص | اختياري |
Interpolate | interpolate | How data points should be connected, e.g. linear, step-before, step-after, basis, basis-open, cardinal, cardinal-open, monotone
| نص | اختياري |
Graph scale | scale | Scaling could be one of these: linear, log, pow, sqrt, quantile, quantize, and threshold
| نص | اختياري |
Maximum Y value axis | max | This optional value might be useful to align multiple graphs side-by-side
| رقم | اختياري |
Width | width | Width for the chart in pixels, if different from the default.
| رقم | اختياري |
Height | height | Height for the chart in pixels, if different from the default.
| رقم | اختياري |
<graph>
{
//
// ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Population_history
// 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:Population_history
//
"version": 2,
"width": 400,
"height": 200,
// The population data could be from Commons dataset, Wikidata, or hardcoded values
"data": [
{
"name": "table",
"url": "wikidatasparql:///?query=SELECT%20%28MAX%28%3Fpopulation%29%20as%20%3Fpopulation%29%20%3Fyear%20WHERE%20%7B%0A%20%20%20%20%23%20set%20the%20item%20here%20-%20e.g.%20city%2C%20country%0A%09BIND%28wd%3AQ84%20as%20%3Fitem%29%0A%20%20%20%20%3Fitem%20p%3AP1082%20%3Fpopstatement%20.%0A%20%20%20%20%3Fpopstatement%20ps%3AP1082%20%3Fpopulation%20.%0A%20%20%20%20OPTIONAL%20%7B%0A%20%20%20%20%20%20%3Fpopstatement%20pq%3AP585%20%3Fdate%20.%0A%20%20%20%20%20%20BIND%28year%28%3Fdate%29%20as%20%3Fyear%29%0A%20%20%20%20%7D%0A%7D%20GROUP%20BY%20%3Fyear%20ORDER%20BY%20ASC%28%3Fyear%29",
"format": { "type": "json" },
// Convert year integer (2016) into a date object (2016-01-01)
"transform": [
// Optionally filter data with an template expression parameter
// e.g. filter = datum.year > 1900 && datum.year < 2000
{ "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" }
]
},
// Each annotation is expected to be an integer year, string text,
// and optional string color (e.g. "#4d2800")
{
"name": "annotations",
"values": [],
"transform": [
{ "type": "formula", "field": "date", "expr": "datetime(datum.year,0,1)" },
{ "type": "formula", "field": "color", "expr": "datum.color||'#000'" }
]
}
],
"scales": [
// The dates are scaled to the "x" axis - the width of the graph
{
"name": "x",
"type": "time",
"range": "width",
"domain": {"data": "table","field": "date"}
},
// The population are scaled to the "y" axis - the height of the graph
// Optional scale parameter can change "linear" to other scales like log
// Optional max parameter can fix the upper bound of the graph
{
"name": "y",
"type": "linear",
"range": "height",
"domain": {"data": "table","field": "population"},
"clamp": true,
"nice": true
}
],
// Simple axis with horizontal grid lines
"axes": [
{"type": "x", "scale": "x", "ticks": 5},
{"type": "y", "scale": "y", "ticks": 5, "grid": true, "orient":"right"}
],
// The graph is drawn with two elements a thick line at the top,
// and a semi-transparent area below
"marks": [
{
"type": "area",
"from": {"data": "table"},
"properties": {
"enter": {
"x": {"scale": "x", "field": "date"},
"y": {"scale": "y", "value": 0},
"y2": {"scale": "y", "field": "population"},
"fill": {"value": "#99B2CC"},
"fillOpacity": {"value": 0.35},
"interpolate": {"value": "monotone"}
}
}
},
// If annotations are given, draw dashed line with associated text
{
"type": "rule",
"from": {"data": "annotations"},
"properties": {
"enter": {
"x": {"scale": "x", "field":"date"},
"y": {"value": 0},
"y2": {"signal": "height"},
"stroke": {"field": "color"},
"strokeWidth": {"value": 2},
"opacity": {"value": 0.6},
"strokeDash": {"value": [8,3]}
}
}
},
{
"type": "line",
"from": {"data": "table"},
"properties": {
"enter": {
"x": {"scale": "x","field": "date"},
"y": {"scale": "y","field": "population"},
"stroke": {"value": "#99B2CC"},
"strokeWidth": {"value": 3},
"interpolate": {"value": "monotone"}
}
}
},
// The small white circles should be drawn after annotations but before text
{
"type": "symbol",
"from": {"data": "table"},
"properties": {
"enter": {
"x": {"scale": "x","field": "date"},
"y": {"scale": "y","field": "population"},
"stroke": {"value": "#99B2CC"},
"fill": {"value": "#fff"},
"size": {"value": 30}
}
}
},
// Annotation text
{
"type": "text",
"from": {"data": "annotations"},
"properties": {
"enter": {
"x": {"scale": "x", "field":"date"},
"y": {"value": 0},
"align": {"value": "right"},
"baseline": {"value": "bottom"},
"angle": {"value": 270},
"dx": {"value": -4},
"dy": {"value": -2},
"text": {"field": "text"},
"stroke": {"field": "color"}
}
}
}
]
}
</graph>