Commit 003e1433 authored by Lodewijk Loos's avatar Lodewijk Loos
Browse files

static map app and data, first commit

parent cbb574dc
Pipeline #309 canceled with stages
File added
# SySTEM2020 - map
# about
This is a static self contained version of the System2020 map.
The map is an interactive data visualisation through which you can explore science learning initiatives outside the classroom across Europe. It includes a snapshot of the dataset created for this project.
![alt System2020-map](extra/screenshot-1.png "System2020-map")
*image1: geo location view*
![alt System2020-map](extra/screenshot-2.png "System2020-map")
*image2: view by steam topic*
# running it
```
# install
npm init
# start local development server on localhost:3005
npm start
```
# about the dataset
The data was acquired via a form that has been online
during the course of the project. An active campaign resulted in numerous organisations filling in the form.
The mapping of European STEAM organisations, programs, events, online projects and bottom up initiatives across a number of parameters has generated comparable data and is bound to produce valuable insights. The collected data includes information on different targets groups, scientific topics, the used methods, outreach and communication strategies, guidance of activities, collaboration, governance and more. We have visualised this data on the interactive map, by which you can explore STEAM organisations, activities and their interrelations across Europe.
In addition to the map, the dataset is open to use as input for quantitative research on these existing initiatives.
Retrieve data
The data in JSON format can be found here:
Items of type organisation:
[public/data/activities.json](public/data/activities.json)
Content items of type activity:
https://form.system2020.education/activities?_format=json
Specifications of the data
The following routes can be used to retrieve specifications of the data. The main usage is to retrieve specific information on 'fields' of data types. For example the list of values that are allowed for a data field. Some of the fields that are specified as ordinal.
Retrieving the specification of an organisation data type:
http://form.system2020.education/custom_rest/content_definition/organisation?_format=json&view=organisations&display=multiple
Retrieving the specification of an activity data type:
https://form.system2020.education/custom_rest/content_definition/activity?_format=json&view=activities&display=multiple
Data relations
Data entries (currently of types activity and organisation) can have relations. These relations are stored as foreign keys in specific data fields of data entries.
Organisation data fields:
nid: unique reference id for the entry
related-organisations: list of id's, referencing other entries of type organisation
Activity data fields:
nid: unique reference id for the entry
submitter-organisation: single reference to an entry of type organisation
related-activities: list id's, referencing other entries of type activity
related-organisations: list id's, referencing entries of type organisation
CSV file output
Data can also be download to a CSV file. In fields with multiple values allowed, values are seperated by pipes (for example: NL|UK).
Retrieving organisations as CSV:
https://form.system2020.education/organisations?_format=csv
Retrieving activities as CSV:
https://form.system2020.education/activities?_format=csv
Disclaimer
Whilst we endeavour to keep the information up-to-date and correct, we make no representations or warranties of any kind, express or implied, about the completeness, accuracy, reliability, suitability or availability with respect to the website or the information, products, services, or related graphics contained on the website for any purpose. Any reliance you place on such information is therefore strictly at your own risk.
This diff is collapsed.
This diff is collapsed.
<!doctype html>
<html>
<head>
<title>System2020 Map</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
</head>
<body>
<a id="title" href="https://system2020.education/" target="_blank" rel="noopener">
<img src="images/title.svg" />
</a>
<div id="visualisation"></div>
</body>
</html>
This diff is collapsed.
{
"name": "system2020-visualisation",
"version": "0.0.2",
"description": "Mapping visualisation of ste(a)m initiatives in Europe",
"keywords": [
"System2020"
],
"author": "Alain Otjens | Waag",
"private": true,
"main": "index.js",
"devDependencies": {
"@babel/core": "^7.5.5",
"@babel/preset-env": "^7.5.5",
"babel-loader": "^8.0.6",
"clean-webpack-plugin": "^3.0.0",
"copy-webpack-plugin": "^5.0.4",
"css-loader": "^3.2.0",
"file-loader": "^4.2.0",
"html-webpack-plugin": "^3.2.0",
"mini-css-extract-plugin": "^0.8.0",
"node-sass": "^4.12.0",
"postcss-loader": "^3.0.0",
"sass-loader": "^8.0.0",
"style-loader": "^1.0.0",
"webpack": "^4.39.3",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.8.0"
},
"dependencies": {
"chroma-js": "^2.0.6",
"d3": "^5.11.0",
"d3-ease": "^1.0.5",
"d3-fetch": "^1.1.2",
"d3-scale": "^3.0.1",
"d3-selection-multi": "^1.0.1",
"mapbox-gl": "^1.3.0"
},
"scripts": {
"build": "webpack",
"watch": "webpack --watch",
"start": "webpack-dev-server --open"
}
}
This diff is collapsed.
{"activity":{"activity-format":{"type":"list_string","label":"Activity format","options":{"Conferences":"Conferences","Contests":"Contests","Fairs":"Fairs","Guided visits":"Guided visits","Holiday camps":"Holiday camps","Lectures":"Lectures","Maker space":"Maker space","Multiple workshops":"Multiple workshops","Panel discussions":"Panel discussions","Performances":"Performances","Science caf\u00e9s":"Science caf\u00e9s","Science camps":"Science camps","Science shows\/demos":"Science shows\/demos","Single workshops":"Single workshops","Vocational trainings":"Vocational trainings","Volunteer programmes":"Volunteer programmes"},"ordinal":0},"steam-topics":{"type":"list_string","label":"Steam topics","options":{"Artifical intelligence":"Artifical intelligence","Art\/music\/theater":"Art \/ music \/ theater","Biology":"Biology","Chemistry":"Chemistry","Climate and earth sciences":"Climate and earth sciences","Computing and information science":"Computing and information science","Design":"Design","Ecology\/forestry\/agriculture":"Ecology \/ forestry \/ agriculture","Education and learning science":"Education and learning science","Engineering":"Engineering","Health and medicine":"Health and medicine","History\/policy\/law":"History \/ policy \/ law","Materials science":"Materials science","Mathematics and logic":"Mathematics and logic","Physics":"Physics","Social science and psychology":"Social science and psychology","Space science":"Space science"},"ordinal":0},"activity-frequency":{"type":"list_string","label":"Activity frequency","options":{"Almost every day":"Almost every day","1-2 times a week":"1-2 times a week","1-2 times a month":"1-2 times a month","Every other month":"Every other month","A few times a year":"A few times a year","Non-recurrent":"Non-recurrent"},"ordinal":1},"activity-times":{"type":"list_string","label":"Activity times","options":{"Afternoon":"Afternoon","After school":"After school","Evening":"Evening","Morning":"Morning","Weekdays":"Weekdays","Weekends":"Weekends"}},"structure-level":{"type":"list_string","label":"Structure level","options":{"1":"1","2":"2","3":"3","4":"4","5":"5"},"ordinal":1},"uses-custom-materials":{"type":"list_string","label":"Custom formats tools and\/or materials","options":{"Yes":"Yes","No":"No"},"ordinal":0},"online-offline-ratio":{"type":"list_string","label":"Online offline ratio","options":{"Face-to-face":"Face-to-face","A combination of face-to-face and online":"A combination of face-to-face and online","Online":"Online"},"ordinal":1},"awards-certificate":{"type":"list_string","label":"Awards certificate","options":{"Yes":"Yes","No":"No","Upon request":"Upon request"},"ordinal":0},"addressed-competencies":{"type":"list_string","label":"Addressed competencies","options":{"Planning skills":"Ability to plan, manage resources (planning skills)","Empathy":"Awareness of others\u2019 needs (empathy)","Being motivated":"Being motivated, sense of initiative","Creativity":"Creativity","Critical thinking":"Critical thinking","Dealing with uncertainty":"Dealing with uncertainty, overcoming roadblocks","Decision making":"Decision making","Democratic citizenship":"Democratic citizenship","Developing an ethical frame of reference":"Developing an ethical frame of reference","Embrace new things":"Embrace new things (entrepreneurial identities)","Entrepreneurial skills":"Entrepreneurial skills","Perseverance":"Perseverance","Problem solving":"Problem solving","Scientific literacy":"Scientific literacy","Self-efficacy":"Self-efficacy","Teamwork":"Teamwork, collaboration skills","Technical skills":"Technical skills (e.g. using a microscope)"},"ordinal":0},"addressed-key-competencies":{"type":"list_string","label":"Life-long learning competencties","options":{"Communicating in a foreign language":"Communicating in a foreign language","Communication in the mother tongue":"Communication in the mother tongue","Cultural awareness and expression":"Cultural awareness and expression","Digital competence":"Digital competence","Learning to learn":"Learning to learn","Mathematical, scientific and technological competence":"Mathematical, scientific and technological competence","Sense of initiative and entrepreneurship":"Sense of initiative and entrepreneurship","Social and civic competencies":"Social and civic competencies"},"ordinal":0},"pedagogical-approach":{"type":"list_string","label":"Activity pedagogical approach","options":{"Collaborative":"Collaborative","Constructivist":"Constructivist","Differentiated instruction":"Differentiated instruction","Experiential learning":"Experiential learning","Inquiry-based":"Inquiry-based","Integrative":"Integrative","Open-ended instruction":"Open-ended instruction","Peer teaching":"Peer teaching","Project based":"Project based","Reflective":"Reflective","Other":"Other"},"ordinal":0},"participation-level":{"type":"list_string","label":"Participation level","options":{"Adult-initiated, shared decisions with young people":"Adult-initiated, shared decisions with young people","Young people are not assigned with tasks, but informed":"Young people are not assigned with tasks, but informed","Young people give advice on projects or programs designed and run by adults":"Young people give advice on projects or programs designed and run by adults","Young people-initiated and guided by adults":"Young people-initiated and guided by adults","Young people-initiated, shared decisions with adults":"Young people-initiated, shared decisions with adults","Other":"Other"},"ordinal":0},"geographical-reach":{"type":"list_string","label":"Geographical reach","options":{"Local":"Local","Regional":"Regional","National":"National","International":"International"},"ordinal":1},"age-groups":{"type":"list_string","label":"Age groups","options":{"-8":"-8","8-12":"8-12","12-16":"12-16","17-20":"17-20","All ages":"All ages"},"ordinal":1},"specific-groups-aimed":{"type":"list_string","label":"Outreach aimed at specific groups","options":{"All genders":"All genders","Children\/youngsters from less privileged households":"Children\/youngsters from less privileged households","Children\/youngsters from minority cultural background":"Children\/youngsters from minority cultural background","Children\/youngsters from rural areas":"Children\/youngsters from rural areas","Children\/youngsters in your neighbourhood or community":"Children\/youngsters in your neighbourhood or community","Children\/youngsters with special needs":"Children\/youngsters with special needs","LGBTQ+":"LGBTQ+","Migrants from outside the EU":"Migrants from outside the EU","Refugees":"Refugees"},"ordinal":0},"specific-groups-reached":{"type":"list_string","label":"Specific groups reached","options":{"All genders":"All genders","Children\/youngsters from less privileged households":"Children\/youngsters from less privileged households","Children\/youngsters from minority cultural background":"Children\/youngsters from minority cultural background","Children\/youngsters from rural areas":"Children\/youngsters from rural areas","Children\/youngsters in your neighbourhood or community":"Children\/youngsters in your neighbourhood or community","Children\/youngsters with special needs":"Children\/youngsters with special needs","LGBTQ+":"LGBTQ+","Migrants from outside the EU":"Migrants from outside the EU","Refugees":"Refugees"},"ordinal":0},"venue-accessibility":{"type":"list_string","label":"Venue accessibility","options":{"Fully":"Fully","Partly":"Partly","No":"No","Not Applicable":"Not Applicable (e.g. when activity is online)","I don\u2019t know":"I don\u2019t know"},"ordinal":0},"groups-aimed-to-involve":{"type":"list_string","label":"Groups aimed at for involvement","options":{"Civic groups in the community":"Civic groups in the community","Members of non-dominant groups that are at risk of exclusion":"Members of non-dominant groups that are at risk of exclusion","Parents\/caregivers":"Parents \/ caregivers","Policy makers":"Policy makers","Teachers and other education professionals":"Teachers and other education professionals"},"ordinal":0},"barriers-for-joining":{"type":"list_string","label":"Barriers for joining","options":{"Accessibility of the venue (Geographic Location":"Accessibility of the venue (Geographic Location)","Accessibility of the venue (Mobility)":"Accessibility of the venue (Mobility)","Accessibility of the venue (Reputation)":"Accessibility of the venue (Reputation i.e. being part of a university may be intimidating)","Activity not promoted sufficiently":"Activity not promoted sufficiently","Cost":"Cost (including participation fee, materials, etc)","Not receiving accreditation":"Not receiving accreditation (e.g. credits or certificate)","Number of places available":"Number of places available","Required level of skills\/knowledge for participants":"Required level of skills \/ knowledge for participants","Scheduled time of activity":"Scheduled time of activity","Untrained staff\/protocols for those with disabilities":"Untrained staff \/ protocols for those with disabilities (Physical and Intellectual)"},"ordinal":0},"activity-languages":{"type":"list_string","label":"Languages supported","options":{"Albanian":"Albanian","Arabic":"Arabic","Aranese":"Aranese","Basque":"Basque","Bosnian":"Bosnian","Bulgarian":"Bulgarian","Catalan":"Catalan","Croatian":"Croatian","Czech":"Czech","Dutch":"Dutch","English":"English","Finnish":"Finnish","French":"French","Frysian":"Frysian","Galician":"Galician","German":"German","Greek":"Greek","Hebrew":"Hebrew","Hungarian":"Hungarian","Irish":"Irish","Italian":"Italian","Macedonian":"Macedonian","Montenegrin":"Montenegrin","Portuguese":"Portuguese","Romani":"Romani","Romanian":"Romanian","Romansh":"Romansh","Scottish Gaelic":"Scottish Gaelic","Serbian":"Serbian","Sign language(s)":"Sign language(s)","Slovak":"Slovak","Slovenian":"Slovenian","Spanish":"Spanish","Swedish":"Swedish","Valencian":"Valencian","Welsh":"Welsh"},"ordinal":0},"collaborating-organisation-types":{"type":"list_string","label":"Types of collaborating organisations","options":{"Libraries":"Libraries","Local government":"Local government","Media partners":"Media partners","Music\/dancing schools":"Music \/ dancing schools","National government":"National government","Other STE(A)M initiatives":"Other STE(A)M initiatives","Professional umbrella associations":"Professional umbrella associations","Research institutes":"Research institutes","Schools":"Schools","Sports clubs":"Sports clubs","Universities":"Universities","Youth groups":"Youth groups"},"ordinal":0},"picture":{"type":"image","label":"Picture","options":null}}}
{"organisation":{"location":{"type":"geofield","label":"Geo location","options":null,"method":"source","weight":0,"geocode_field":"field_address","reverse_geocode_field":"","hidden":false,"disabled":true,"plugins":["openstreetmap","arcgisonline"],"dumper":"wkt","delta_handling":"default","failure":{"handling":"preserve","status_message":true,"log":true}},"country":{"type":"address","label":"Country","options":{"AL":"Albania","AT":"Austria","BE":"Belgium","BA":"Bosnia \u0026 Herzegovina","BG":"Bulgaria","HR":"Croatia","CW":"","CZ":"Czech Republic","FI":"Finland","FR":"France","DE":"Germany","GR":"Greece","IE":"Ireland","IL":"Israel and the Palestinian Territories","IT":"Italy","XK":"Kosovo","MK":"North Macedonia","ME":"Montenegro","NL":"Netherlands","PT":"Portugal","RS":"Serbia","SI":"Slovenia","ES":"Spain","SE":"Sweden","CH":"Switzerland","GB":"United Kingdom"}},"website":{"type":"link","label":"Website","options":null},"collaborates-with-formal-education":{"type":"list_string","label":"Collaborates with formal education","options":{"Yes":"Yes","No":"No"},"ordinal":0},"organisation-type":{"type":"list_string","label":"Organisation type","options":{"Activism":"Activism","Afterschool programme":"Afterschool programme","Botanical garden":"Botanical garden","Civil organisation":"Civil organisation","Coding":"Coding","Competition\/hackathon":"Competition \/ hackathon","Corporate organisation":"Corporate organisation","Fablab":"Fablab","Festival\/fair":"Festival \/ fair","Gallery":"Gallery","Gaming":"Gaming","Independent artist":"Independent artist","Magazine":"Magazine","Makerspace":"Makerspace","Museum":"Museum","Nature preservation":"Nature preservation","Popular science book":"Popular science book","Science centre":"Science centre","Science fiction":"Science fiction","Summercamp":"Summercamp","Toy":"Toy","TV show":"TV show","Vlog\/blog":"Vlog \/ blog","Zoo\/aquarium":"Zoo \/ aquarium"},"ordinal":0},"combined-steam-topics":{"type":"list_string","label":"Topics combined with STEAM","options":{"Agriculture":"Agriculture","Citizen science":"Citizen science","Community work":"Community work","Construction":"Construction","Cooking":"Cooking","Crafts":"Crafts","Design":"Design","Gardening":"Gardening","Home economics":"Home economics","Music":"Music","Nature study\/preservation":"Nature study \/ preservation","Performing arts":"Performing arts","Sports":"Sports","Video\/film":"Video \/ film","Visual arts":"Visual arts"},"ordinal":0},"legal-entity":{"type":"list_string","label":"Legal entity","options":{"Association":"Association","Community":"Community","Foundation":"Foundation","Government Organization":"Government Organization","Informal initiative":"Informal initiative of one or more individual people","NGO":"NGO","Private Corporation":"Private Corporation","SME":"SME (Small and Medium-sized Enterprises)","Social Enterprise":"Social Enterprise","Other":"Other"},"ordinal":0},"sources-of-income":{"type":"list_string","label":"Sources of income","options":{"Donations":"Donations","Entrance fee":"Entrance fee","European grants":"European grants","Licensing":"Licensing","Local grants":"Local grants","Membership fee":"Membership fee","National grants":"National grants","Participant fee":"Participant fee","Product sales":"Product sales","Public funding":"Public funding","Sponsoring":"Sponsoring","Voluntary work":"Voluntary work"}},"communcation-channels":{"type":"list_string","label":"Communication channels","options":{"Community platforms":"Community platforms (Meetup, Reddit)","Eventbrite":"Eventbrite","Facebook":"Facebook","Free publicity news items":"Free publicity news items","Instagram":"Instagram","LinkedIn":"LinkedIn","Local\/municipal calendar":"Local\/municipal calendar","Mailing list":"Mailing list","Photo sharing channels":"Photo sharing channels (Flickr)","Posters\/flyers":"Posters\/flyers","Snapchat":"Snapchat","Traditional mass media":"Traditional mass media (tv, radio, newspaper)","Twitter":"Twitter","Video channels":"Video channels (YouTube and Vimeo)","Website(s)":"Website(s)","Word of mouth":"Word of mouth"}},"visitors-amount":{"type":"list_string","label":"Number of visitors","options":{"0 - 100":"0 - 100","100 - 1,000":"100 - 1,000","1,000 - 10,000":"1,000 - 10,000","10,000 - 100,000":"10,000 - 100,000","\u003E 100,000":"\u003E 100,000"},"ordinal":1},"inclusivity-policy":{"type":"list_string","label":"Inclusivity policy aim","options":{"All genders":"All genders","Children\/youngsters from less privileged households":"Children\/youngsters from less privileged households","Children\/youngsters from minority cultural background":"Children\/youngsters from minority cultural background","Children\/youngsters from rural areas":"Children\/youngsters from rural areas","Children\/youngsters in your neighbourhood or community":"Children\/youngsters in your neighbourhood or community","Children\/youngsters with special needs":"Children\/youngsters with special needs","LGBTQ+":"LGBTQ+","Migrants from outside the EU":"Migrants from outside the EU","Refugees":"Refugees"},"ordinal":0},"languages":{"type":"list_string","label":"Languages","options":{"Albanian":"Albanian","Arabic":"Arabic","Aranese":"Aranese","Basque":"Basque","Bosnian":"Bosnian","Bulgarian":"Bulgarian","Catalan":"Catalan","Croatian":"Croatian","Czech":"Czech","Dutch":"Dutch","English":"English","Finnish":"Finnish","French":"French","Frysian":"Frysian","Galician":"Galician","German":"German","Greek":"Greek","Hebrew":"Hebrew","Hungarian":"Hungarian","Irish":"Irish","Italian":"Italian","Macedonian":"Macedonian","Montenegrin":"Montenegrin","Portuguese":"Portuguese","Romani":"Romani","Romanian":"Romanian","Romansh":"Romansh","Scottish Gaelic":"Scottish Gaelic","Serbian":"Serbian","Sign language(s)":"Sign language(s)","Slovak":"Slovak","Slovenian":"Slovenian","Spanish":"Spanish","Swedish":"Swedish","Valencian":"Valencian","Welsh":"Welsh"},"ordinal":0},"picture":{"type":"image","label":"Picture","options":null}}}
This diff is collapsed.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment