Bearbeiten von „Felix Englisch“
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 89: | Zeile 89: | ||
</graph> | </graph> | ||
Wahl zum Stadtrat der Hansestadt Lüneburg 2021 (Wahlbeteiligung 56,2 %)</div> | Wahl zum Stadtrat der Hansestadt Lüneburg 2021 (Wahlbeteiligung 56,2 %)</div> | ||
== Zweites Diagramm == | == Zweites Diagramm == | ||
Zeile 416: | Zeile 386: | ||
{ | { | ||
// | |||
// ATTENTION: This code is maintained at https://www.mediawiki.org/wiki/Template:Graph:Pie_from_row | |||
// 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:Pie_from_row | |||
// | |||
// Template translation is in https://commons.wikimedia.org/wiki/Data:Original/Template:Graphs.tab | |||
// | |||
"version": 2, | "version": 2, | ||
"width": 100, | "width": 100, "height": 100, "padding": "auto", | ||
"legends": [{"title": "Legend","fill": "color"}], | |||
"data": [ | "data": [{ | ||
"name": "table", | "name": "table", | ||
" | "url": "tabular:///Bea.gov/GDP by state.tab", | ||
"transform": [{"type": "pie","field": " | "format": {"type": "json", "property": "data"}, | ||
} | "transform": [ | ||
], | |||
"scales": [ | {"type": "fold", "fields": []}, | ||
{"type": "pie", "field": "value"} | |||
"name": " | ] | ||
"type": " | }, | ||
"domain": {"data": "table","field": " | { | ||
"name": "labels", | |||
"url": "tabular:///Bea.gov/GDP by state.tab", | |||
"format": {"type": "json", "property": "fields"} | |||
}], | |||
"scales": [{ | |||
"name": "color", | |||
"type": "ordinal", | |||
"range": "category10", | |||
"domain": {"data": "table", "field": "key"}, | |||
}], | |||
"marks": [ | "marks": [ | ||
{ | { | ||
"type": "arc", | "type": "arc", | ||
"from": {"data": "table"}, | "from": { "data": "table" }, | ||
"properties": { | "properties": { | ||
"enter": { | "enter": { | ||
" | "fill": {"field": "key", "scale": "color"}, | ||
" | "stroke": {"value": "white"}, | ||
"startAngle": {"field": "layout_start"}, | "startAngle": {"field": "layout_start"}, | ||
"endAngle": {"field": "layout_end"}, | "endAngle": {"field": "layout_end"}, | ||
"outerRadius": {"value": 100 }, | |||
"outerRadius | } | ||
} | } | ||
}, | }, | ||
{ | { | ||
// This mark draws labels around the pie chart after the pie chart has been drawn | |||
"type": "text", | "type": "text", | ||
"from": {"data": "table"}, | // Before drawing, we need to perform a number of calculations to figure out the exact location and orientation of the text | ||
"from": { | |||
"data": "table", | |||
"transform": [ | |||
// For each data point (datum), each of these transformations will be ran in order. | |||
// Formula transformation evaluates the expression and assigns result to the datapoint | |||
// Size of the pie slice, in degrees: sliceSize = (end - start) * 180 / Pi | |||
{ "type": "formula", "field": "sliceSize", "expr": "(datum.layout_end - datum.layout_start)*180/PI" }, | |||
// Draw text only if the slice of the arc is more than 2 degrees to avoid overcrowding | |||
{ "type": "filter", "test": "datum.sliceSize > 9" }, | |||
// Format percentage as a string | |||
{ "type": "formula", "field": "prcStr", "expr": "format('.0%',datum.sliceSize/360)" }, | |||
{ "type": "formula", "field": "title", "expr": "datum.key+' '+datum.prcStr" }, | |||
// Determine the side of the pie chart we are on - left or right. | |||
{ "type": "formula", "field": "invert", "expr": "datum.layout_mid*180/PI < 180 ? 1 : -1" }, | |||
// If on the left, the text should be right-aligned (go from the rim inward) | |||
{ "type": "formula", "field": "align", "expr": "datum.invert < 0 ? 'left' : 'right'" }, | |||
// At what angle should the text be drawn relative to the point on the circle | |||
{ "type": "formula", "field": "angle", "expr": "(datum.layout_mid*180/PI)-90*datum.invert" }, | |||
// Make font smaller for smaller pie slices | |||
{ "type": "formula", "field": "fontSize", "expr": "datum.sliceSize > 20 ? 15 : (datum.sliceSize > 13 ? 12 : 9)" }, | |||
// Make font bold for largest pie slices | |||
{ "type": "formula", "field": "fontWeight", "expr": "datum.sliceSize > 15 ? 'bold' : 'normal'" } | |||
] | |||
}, | |||
"properties": { | "properties": { | ||
"enter": { | "enter": { | ||
// Use the fields calculated in the transformation to draw category names | |||
"align": {"value": "center"}, | "align": {"value": "center"}, | ||
"angle": {"field": "angle"}, | |||
"baseline": {"value": "middle"}, | "baseline": {"value": "middle"}, | ||
"text": {"field": " | "fill": {"value": "black"}, | ||
"fontSize": {"field": "fontSize"}, | |||
"fontWeight": {"field": "fontWeight"}, | |||
"radius": {"value": 100, "offset": -30}, | |||
"text": {"field": "title"}, | |||
"theta": {"field": "layout_mid"} | |||
} | } | ||
} | } | ||
} | } | ||
] | ] | ||
} | } | ||
</graph> | </graph> |