Sjabloon:Graph:Lines

Uit Wiki Raamsdonks Erfgoed
Sjabloondocumentatie​

Dit sjabloon maakt een lijngrafiek van gegevens uit de gegevensnaamruimte van Commons of van Wikidata met behulp van een SPARQL-query.

Let op! De hoofdversie van dit sjabloon bevindt zich in MediaWiki's Template:Graph:Lines. Wijzigingen of aanvragen voor wijzigingen voor dit sjabloon horen daar plaats te vinden, om vervolgens gekopieerd te worden naar andere wiki's.

Voorbeelden

Met brontabel van Commons

{{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=Gender pay gap in the United States_
| yZero=false | xAxis=Year | yAxis=Percentage | yMax=100 | yGrid=y | legend=Age group
}}

Luafout in Module:TNT op regel 159: Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab.


Met Wikidata

{{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=Paintings by decade
}}
Luafout in Module:TNT op regel 159: Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab.


Met Wikidata (meerdere lijnen)

De Wikidata-query levert drie kolommen op: jaar, populatiegrootte en landnaam. De grafiek toont één lijn per land.

{{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 "{{CONTENTLANGUAGE}}". }
}
| type=year | xField=year | group=countryLabel | value=population
| title=Population of countries bordering Germany
| legend=- | xGrid=y | yGrid=y | yTicks=7 | width=600
}}
Luafout in Module:TNT op regel 159: Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab.


Parameters

Luafout in Module:TNT op regel 159: Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab

<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,
      
      
      
      "properties": { 
        "labels": { 
          
          
        } 
       }
    },
    {
      "scale": "y", "type": "y", "tickSizeEnd": 0,
      
      
      
      
      "properties": { 
        "labels": { 
          
          
        } 
       }
    }
  ],

  "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": "linear"},
              "strokeWidth": {"value": 2.5}
            }
          }
        }
        
      ],
    },





  ]
}
</graph>