Public
Edited
Oct 13, 2024
1 fork
2 stars
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
data = fetch(
`https://query-main.wikidata.org/sparql?query=${encodeURIComponent(query)}`,
{ headers: { accept: "application/sparql-results+json" } }
).then((response) => response.json())
Insert cell
df = aq.from(
data.results.bindings.map((res) => ({
award: res.awardLabel.value,
count_females: res.count_females.value,
count: res.count.value,
share_female: res.share_female.value
}))
)
Insert cell
query_decade = `SELECT ?decade (SUM(?female) AS ?count_females) (SUM(?male) AS ?count_males) (COUNT(*) AS ?count) ((100 * ?count_females) / ?count AS ?share_female) WHERE {
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
?award wdt:P279 wd:Q7191.
?item p:P166 _:b1;
wdt:P21 ?gender.
_:b1 ps:P166 ?award;
pq:P585 ?date.
BIND(CONCAT(STR(ROUND(YEAR(?date)/10)),"0") AS ?decade)
BIND(IF(?gender IN(wd:Q6581097, wd:Q2449503), 1 , 0 ) AS ?male)
BIND(IF(?gender IN(wd:Q6581072, wd:Q1052281), 1 , 0 ) AS ?female)
}
GROUP BY ?decade
ORDER BY DESC (?decade)`
Insert cell
data_decade = fetch(
`https://query-main.wikidata.org/sparql?query=${encodeURIComponent(
query_decade
)}`,
{ headers: { accept: "application/sparql-results+json" } }
).then((response) => response.json())
Insert cell
df_decade = aq.from(
data_decade.results.bindings.map((res) => ({
decade: res.decade.value,
count_females: res.count_females.value,
count: res.count.value,
share_female: res.share_female.value
}))
)
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more