Πρότυπο:Graph:Population history

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Πήδηση στην πλοήγηση Πήδηση στην αναζήτηση
Documentation icon Τεκμηρίωση προτύπου[προβολή] [επεξεργασία] [ιστορικό] [εκκαθάριση]

Χρήση[επεξεργασία κώδικα]

H κύρια έκδοση αυτού του γραφήματος βρίσκεται στο mediawiki Template:Graph:Population_history. Παρακαλούμε κάντε όλες τις αλλαγές εκεί και μετά αντιγράψτε τις αλλού (μέχρι να αυτοματοποιηθεί η αντιγραφή)

{{Graph:Population history|Q84}}
Εμφανίζει την ιστορία του πληθυσμού του Λονδίνου από τα Wikidata
{{Graph:Population history

| table=Wikidata/St.Petersburg.tab
| atable=Original/St.Petersburg population annotations.tab}}
Εμφανίζει την ιστορία του πληθυσμού της Αγίας Πετρούπολης από πίνακα στα Commons, με επισημάνσεις

Δείτε επίσης[επεξεργασία κώδικα]

Template Data[επεξεργασία κώδικα]

Εισάγει ένα γράφημα με τον ιστορικό πληθυσμό για την ζητούμενη πόλη.

Παράμετροι προτύπου

Αυτό το πρότυπο προτιμά μορφοποίηση μπλοκ των παραμέτρων.

ΠαράμετροςΠεριγραφήΤύποςΚατάσταση
Wikidata ID πόλης, περιοχής ή χώρας1

Wikidata ID της πόλης, περιοχής ή χώρας για την οποία θέλουμε διάγραμμα

Προεπιλεγμένο
Q84
Συμβολοσειράπροαιρετικό
Τίτλος της σελίδας δεδομένων στα Commonstable

Όνομα της σελίδας δεδομένων στα Commons, χωρίς το πρόθεμα Data:. Ο πίνακας πρέπει να περιλαμβάνει στήλες "year" και "population".

Συμβολοσειράπροαιρετικό
Τοπικές πηγές για αυτό το γράφημαvalues

Εισαγάγετε όλες τις τιμές ως λίστα αντικειμένων JSON: {"year":1980, "population":1000}, {"year":1984, "population":1045}, ...

Άγνωστοςπροαιρετικό
Τίτλος της σελίδας επισημάνσεων στα Commonsatable

Όνομα της σελίδας επισημάνσεων στα Commons, χωρίς το πρόθεμα Data:. Ο πίνακας πρέπει να περιλαμβάνει στήλη "year", και προαιρετικά στήλες "text" και "color".

Συμβολοσειράπροαιρετικό
Τοπικές τιμές επισήμανσηςavalues

Εισαγάγετε όλες τις τιμές επισήμανσης ως λίστα αντικειμένων JSON: {"year":1980, "text":"Μεγάλο γεγονός"}, ...

Άγνωστοςπροαιρετικό
Φίλτροfilter

Προαιρετικά, φιλτράρετε τα δεδομένα με μια έκφραση, π.χ. datum.year >= 1900 && datum.year < 2000

Άγνωστοςπροαιρετικό
Χρώμα γραφήματοςcolor

Απόχρωση με την οποία επισημαίνονται τα δεδομένα στο γράφημα

Προεπιλεγμένο
#00f
Παράδειγμα
#f00
Συμβολοσειράπροαιρετικό
Παρεμβολήinterpolate

Πως συνδέονται τα σημεία δεδομένων, π.χ. linear, step-before, step-after, basis, basis-open, cardinal, cardinal-open, monotone

Προεπιλεγμένο
monotone
Παράδειγμα
linear
Συμβολοσειράπροαιρετικό
Κλίμακα γραφήματοςscale

Η κλίμακα μπορεί να είναι ένα από αυτά: linear, log, pow, sqrt, quantile, quantize, και threshold

Προεπιλεγμένο
linear
Παράδειγμα
log
Συμβολοσειράπροαιρετικό
Μέγιστη τιμή άξονα Ymax

Αυτή η προαιρετική τιμή μπορεί να είναι χρήσιμη για την στοίχιση πολλαπλών γραφημάτων οριζόντια

Προεπιλεγμένο
Αυτόματη προσαρμογή στα δεδομένα.
Παράδειγμα
10000
Αριθμόςπροαιρετικό
Πλάτοςwidth

Πλάτος για το γράφημα σε pixel, αν χρειάζεται να είναι διαφορετικό από το προεπιλεγμένο.

Προεπιλεγμένο
400
Αριθμόςπροαιρετικό
Ύψοςheight

Ύψος για το γράφημα σε pixel, αν χρειάζεται να είναι διαφορετικό από το προεπιλεγμένο

Προεπιλεγμένο
200
Αριθμόςπροαιρετικό
<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>