From 54f476b7e67d42d92a39571316850180953a3ed5 Mon Sep 17 00:00:00 2001 From: Veit Schiele Date: Fri, 12 Jan 2024 17:24:30 +0100 Subject: [PATCH] :memo: Categorise diagram types in tiles --- docs/conf.py | 1 + docs/requirements.txt | 1 + docs/viz/index.rst | 2 +- docs/viz/types/bar-charts.rst | 6 + docs/viz/types/boxplot.png | Bin 0 -> 16009 bytes docs/viz/types/graph-flowcharts.rst | 4 + docs/viz/types/index.rst | 173 +++++++++++++++++++++-- docs/viz/types/line-area-charts.rst | 6 + docs/viz/types/maps.rst | 13 ++ docs/viz/types/piecharts.rst | 6 + docs/viz/types/scatter-bubble-charts.rst | 4 + docs/viz/types/treemap.png | Bin 0 -> 16303 bytes 12 files changed, 204 insertions(+), 12 deletions(-) create mode 100644 docs/viz/types/boxplot.png create mode 100644 docs/viz/types/treemap.png diff --git a/docs/conf.py b/docs/conf.py index a5fbb46..c73e310 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -33,6 +33,7 @@ "sphinx.ext.graphviz", "sphinx.ext.todo", "sphinxcontrib.cairosvgconverter", + "sphinx_design", ] # Add any paths that contain templates here, relative to this directory. diff --git a/docs/requirements.txt b/docs/requirements.txt index 2b1f9bc..eb0bf26 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -3,3 +3,4 @@ furo nbsphinx sphinxcontrib-svg2pdfconverter +sphinx_design diff --git a/docs/viz/index.rst b/docs/viz/index.rst index beb74e2..9d2ca57 100644 --- a/docs/viz/index.rst +++ b/docs/viz/index.rst @@ -9,8 +9,8 @@ Daten mit schönen und zugänglichen Visualisierungen erzählen. :titlesonly: :maxdepth: 0 - diagram-anatomy types/index + diagram-anatomy colors axes-and-labels legends diff --git a/docs/viz/types/bar-charts.rst b/docs/viz/types/bar-charts.rst index 6cd2bac..b3731fd 100644 --- a/docs/viz/types/bar-charts.rst +++ b/docs/viz/types/bar-charts.rst @@ -11,6 +11,8 @@ vergleichen oder Trends im Zeitverlauf anzuzeigen. .. figure:: bar-timeseries.png :alt: Einfaches Balkendiagramm mit Zeitreihen +.. _grouped-bar-charts: + Gruppierte Balkendiagramme -------------------------- @@ -20,6 +22,8 @@ Kategorien hinweg zu vergleichen. .. figure:: bar-grouped-discrete.png :alt: Gruppierte Balken mit diskreten Werten +.. _stacked-bar: + Gestapelte Balkendiagramme -------------------------- @@ -32,6 +36,8 @@ zur Gesamtsumme. .. figure:: bar-stacked-timeseries.png :alt: Gestapeltes Balkendiagramm für Zeitreihen +.. _horizontal-bar-charts: + Horizontale Balkendiagramme --------------------------- diff --git a/docs/viz/types/boxplot.png b/docs/viz/types/boxplot.png new file mode 100644 index 0000000000000000000000000000000000000000..5b3516e07ce4c6bbeddb6b9bd9fa6f56ef7fde30 GIT binary patch literal 16009 zcmeHucT`hd*C(O^7C=EnP>KztKXj?Vf^<-N2Ss{QARwW{h=PKE(tAe?RS88B2-s+$ zNEbp?dI&WMkPw)g_`J{eeKYgNtodWs%&eESvdFnP_uPHY*=O(H{_TBU-8Ix=J>Fq*k zm#Z`PlvGpf5pn z`Y((EZ48Vof=^pMa0srmmaV?~2s9WNkEqAdIy1oTU)7jCZ$4q*bec8{OX!8e^xwbg zK5bDfM`pHO0y?vt+PTg|e@tXD1I*VFtQf0F6GCwP@k!cXEGNZacMm(**ksxUO@KEe z1oi}t+u7B3@@&CFW}6s?eHqWD?Uhj{`-8C&bPADZ{PVi$dENZDL7KoUw_1*%p_F=P z;xSI4_IT*t?}$#-jc=UYp1o?@<2S12kTdX-oCE>tqShv{3TlT$q5KW(*Y^*0a}PwO z4)(XNjzG2Zy_+eksJRZ|+%D^=l$5huWU26tnDVOBFRl4w)8=i$IZwW%HSKL;d{7_w zfQP6n<9q<#NhP##7heJ|jX zV+5Y{;pir^ZTnY@RA-br;iA&abIw`5wI@-w{@wEZqoeK%A`qPowYA{*a?6i5`JYT5 zYS{S|GuI2KAPVK!TkVqL}{?uaUu<64BZ13Ha6X1Y7_f=TfOJ= zDk~*}sl*Wz5cGgDWuQEvwU)WG`Bh;5hb?~?Y1GwuZ)c+*-op0ri$!O>kl>}_RDC3_ zs@a|&y7$=K*EcoxykZ7S4jIohH$U$Z5;WQvj9B^k@vG`V{J{?U?y^O*D3pSodbm6Y zeaOTxC)_RU)NU;Qx^H=7(GhGACu*qT;8N{{lZPdJ8 zMEK`4)!^!Ev*mkh$)zI>2V{%hYLjCZ#BPoHVCxJzJ3IA{<4r0Krl<2RGn>(q+^<)9puYr_}VA_J^0>keaV$J+H7>*yQHzh zhAqTMPO3W9^Mz4IgSeQ-AuNym&O{Y?>go$(~5}9=3WF>=ULf9Dn`S%h{PIft(si z-wbc_r+-o0RB9(l1(fia6As$et}-r(@*3Y)g2+oHSkx6f$r2`C+uiV>UT>@JSxRsR zuYN)eV{!+k5+$G_#vnY@txVCkc5M=3$9c)SAN6&83kNqlyViZK!fUB-o*swgV&NtNj`(>s1&J|)*rgjZwuixoq0p~^g z2XCXMymR8tD;kzhd-NEtV6uCtSvcfc5PFLbURK7b<`ja(PP*9F^|EAB*lH_-v%$kw zF7-UJF74wD{@uu&u;mAoC!4&DgF8s0x4(2Vn5Ip-<==MA$tdklAGOV#!+!F~=z9RRW3tA1%Q zI?90!4EILNeO3T0zF;(?d+s2l*RXdw3)JIS;QAy`Fo4bP19RQtsC8vbPD9v=lYs2@ z40LqwoF8M`vZgw;E88sBxJ*0Py0!02<@A?TL;p~8fy;)(94(oio$}O#%O;zw1 z$ozwCL@rfazPAslFFHJ@uT{Bkp6%?acRJF$&Tljl@Dvw3U^OiZB{IB%0evtrQgt{L zg79c|@fBFU$E+K=Y?8~tH|W==$({b0r$+fK4VuN^1?+hnu!CqpX(pg z3wC9w4;qvedyjW~)=OrM8lCY_3m#80q zz_hvO$fxEs^jY;5t0+&Ym&u_vsph)T@e89Lq5;uv8wxJ8lyLq4_q}}s(OLa+Lh4L5 zBrmlq;9R&QrfGXpO!?V8ZoXIW0ge>`DyI$PPKk*C;nqRZT38iNF+84Zi>a3SNEShq zmg>6nWVr|0)wsP)_q%6hC4zA2mcbJIN(>V}ExpUsM-MZc>$|vz{CP+ZS9JN}#94{2 zyeBUWJMw&FYD=ReLR_3#hoyD)euiztIGo|bL%y;qz8p4L<63rj-S-w@kGV_VPZfrT z`!o-J#nr_erCC}eU}=rk6qn90P%&c44n`4^fY%f)v#8?tW4I%fvgHSt-!v(I8v)O? za0nY(sdRmyEa0=ylRf{{f;rpmQOCmCgJq4(0Yepo)#ii!!SqSMw7Abxm*zB^+TgA^ zkPb5`qcK-6Wk=0=oT^5)(ptE_oU4ksgLe_j@TOUTq9dIF+8${6VfJ6Gt#>%D zY<7S3Rc;FS1jd=mI^OObd}bf;BQB@b*AJQYQ?wx7T{AcHRo}}#X8$V80SqFJ` zzT!EmY&x0_7OC@g30Bntpb1;C#tqooUGuE!?Gq1~)NSeDrSYgAdT=S5uZoUo1n-V9 zW^E(~9-OpN;UmJg1i_DD_G69D(ovJ|A;#Q#_CFoJ=|9!Wmd4%9hyavCa9ToRdW$q; zMh8!60MvRgoG-@=tbj&~&C`|z{MRx%ev;-CT>oBv%bksey`I)HzI2v65&ig;}LW1|oNsa4Y zPHX}m9kaK)6=U}8#x99O(uG2s2Zx6E2-Y7JXbu-}l7qv;XUkqjY~oi}6|f#29&C^b z%kxMivZ%4qwzRB_ekXsljEaiN)wkN(W@bY-h$6$0adB)W_Rh}EAEU2do4R$+B_ss3 zC|!oWFX8R&J-?M#P;jaIQgLmq880ty7v*aCO?J(62?+_A2j5sk#KcaNrT34Iix=LB z6@B0MP)0;kjgjl&Z2Q}zW-_VY$gTYvXI#=DEvzR`KDU0C;kNK%)R1+RJd@81v5Y}_ z{N?85b+Sx*>$^?_D*Vxl+C^>!YV}zXcO98bzT5m^iJJ$^x`jy$f7>VXb^lVKbL6h( zox_c2#jkAZ*6+eEvUwg8{TXTT`@_R)bnRg{#17~jGn>>!8le7W^t6S$S-n`3t_u8s zDzIO$ze&T~FLMD^2oKYZp{s%_u#)`O8=uov0R*VR9y#eOeS{|fXjgso3+ZvPr7sbQh(_ANlSVPEy= z;%v}#yUNJ@G+no&0Np+ul}Z=qmoT8)4!Ql8=(_!X-3wj$HFCxJj3x}ddLwulHsNlz zwz&8vI{G*qzNC+}?-Iu2`4ZmiYa4*Iq+@h2sEP`M(o$40vQ)x5L^`*ou1?3myUNte z{464^rqRZFtf(?vqo>iWI%y+Wr8`o1=J=_dFT{6p+_0f~pA^u3v!XLuMe7}D5r<3M z-1HOMsV%AF3YpVL=R(IUFI{+JaexH5Wy=L6tp$+cnwrAQ&!ft7*9&g=`c_>jm%-c; zN3@A<4G9N!WStPw(F{(X2<1P`Vh8AjveHo(&T|*^JF{Yh+iiL-WJ4M%D(pC39ft!F zdyA2xbHdE5U2gyZ4LW8FQK7=MGYMY0J+-vLXJc($u~}M-M2=0G653Mc&%!Ipl1ocV z3sRlAe+&+aXCCxBgXT`dZVA01aUl>06DB4mHY?|A=V&^>0DEvEO%`2YQ{P$bj448) zYzXMiax28cnJ+Kgrc(Gf{8nz zZOzLqFH))0YM1T|QyApz&iYq&40e)KH>h9^L`&$czJ-TMv=XVOG!zZ~DbRFdm+=V!4(^|Kbx5$izW0~iCN z^w~u`?`tz$ClG&L2EsZ$&q2b{0N}%9u3x`K3v6a5*206v)K&jP)c`s=)>M+JUBtdR z*kEF3XP2Naq}fX{RKeFYYGu{dM=73ZDk;$lxDNU0Txyc$ynL7N0b^>>bR?%DJEG(8 z6jL*C#&r`Suty!GZq3JqQDCRD4j-nPt1x#bzigE0zI+b~U5!9NLfEo4mcuq}xto&n zOn7UIzFIRe)ppr$eOD-#VXly2W=^P{E$p=p<28gsP9~?Wog|*?mk|@4tl>Rpe7Pcl z(3Gyd0kzu3>F(o`qO#UFaBg{P z*gV_c^fC}z@4czam`am&iX4}E&qv678F)L*xipFi+gHfm1v*ix=Ciw~W~Ih(C$=-J zy2d8wmbb5mhs^d9t=H!s|ET1egVxvK*)8k6v;2SH!WH)R#HzG43-k#wX-&7C`5la? zFodcr6(4w#_~hFB1}ochP<&N$^JvCj4nmk5^{)itUCA4bXs0%|t>9Dhq2KY?dd#QC zzq>+z2#!q)$9rSzI=;Q)j8S0w{mKEKf~pMfF#WzCI<({)#TS^idzmwQ`P?^kNL|Ss z_M_;ODrcgQLBdC;woW7%H@kx9J?q^yR_p29lcnVM?X*^Vfo6r+ST0zpmHRoe6V8=sgv-oaR>^E=aDuyCy>ghqH5iR@ZE!LJ!Ui2Hda2q zY!`lqxQ?HEu$H4Np|He+`|6CsJ^WXB_mpke^##}PJRcZy<)_MJ@VPH%6PwoL)YKx( zrx8M~SN2k^=69+}d&m@t8dQjeXa)R2*szhMUcK{#1Dvzst7ugw& zqm0Ngm>1w3y+plE*i93*+G6&vrvl_ndc)n_u2}#1L=1VdDWuy$#KX<4{c3vX%5eTd zEz^nlAsu_3 zVg(v<_Jc z1HcDC?P|KYdl?Bdc&WD~=mIhV1mV#mItp}&`T&riS(y9&Dt!nIV1}Lwb}-Q;;sqLR z1kT#qG&u6_m-_cg0ebMiu6`Pq@Wwls){v`j&n5Mc*VzW<=k4L8982%Z+M_xwGNNy%zgDYm9YL=E$o2Dy z=i9G1LMJX~I{9wr*{W?HQ}Qwf+k0!XvFY~fTG{hY9;4)$xul!9SizhFgHEPBb+ErD zR48P5y46YAIVD*qoya+Cydr}dV=Agf>Z5npRlay|%mL<@wm}YGd0lciOb1@qb4{{g zKdmtux3XBn=wQ5z!)@v28WoU8fnq<*we9S@)jLew`5Qe^jfC4VC)utq1PB8{ARd;0R7v}u5oAL®10B-Hc%nYVqDc-mV>aZN>^=+L?bn_j#dVbB=%RM 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 +Vergleiche +---------- + +.. grid:: 3 + + .. grid-item-card:: Balkendiagramm + + .. image:: bar-discrete.png + :alt: Diskretes Balkendiagramm + :target: bar-charts.html + + .. grid-item-card:: Gruppiertes Balkendiagramm + + .. image:: bar-grouped-discrete.png + :alt: Gruppiertes Balkendiagramm + :target: bar-charts.html#grouped-bar-charts + + .. grid-item-card:: Horizontales Balkendiagramm + + .. image:: bar-horizontal-discrete.png + :alt: Horizontales Balkendiagramm + :target: bar-charts.html#horizontal-bar-charts + + .. grid-item-card:: Blasendiagramm + + .. image:: bubble-chart.png + :alt: Blasendiagramm + :target: scatter-bubble-charts.html#bubble-charts + +Trends +------ + +.. grid:: 3 + + .. grid-item-card:: Liniendiagramm + + .. image:: line-chart-discrete.png + :alt: Diskretes Balkendiagramm + :target: line-area-charts.html#line-charts + + .. grid-item-card:: Flächendiagramm + + .. image:: area-chart-discrete.png + :alt: Flächendiagramm + :target: line-area-charts.html#area-charts + + .. grid-item-card:: Boxplot + + .. image:: boxplot.png + :alt: Boxplot + :target: line-area-charts.html#boxplots + +Teil-zu-Ganzes +-------------- + +.. grid:: 3 + + .. grid-item-card:: Ringdiagramm + + .. image:: donut.png + :alt: Ringdiagramm + :target: piecharts.html#donut + + .. grid-item-card:: Kreisdiagramm + + .. image:: pie.png + :alt: Kreisdiagramm + :target: piecharts.html#pie + + .. grid-item-card:: Gestapeltes Balkendiagramm + + .. image:: bar-stacked-discrete.png + :alt: Gestapeltes Balkendiagramm + :target: bar-charts.html#stacked-bar + + .. grid-item-card:: Gestapeltes Flächendiagramm + + .. image:: area-chart-discrete.png + :alt: Gestapeltes Flächendiagramm + :target: line-area-charts.html#stacked-area + + .. grid-item-card:: Halbkreisförmiges Ringdiagramm + + .. image:: gauge-chart.png + :alt: Halbkreisförmiges Ringdiagramm + :target: piecharts.html#gauge + + .. grid-item-card:: Tree Map + + .. image:: treemap.png + :alt: Tree Map + :target: maps.html#tree-map + +Korrelationen +------------- + +.. grid:: 3 + + .. grid-item-card:: Streudiagramm + + .. image:: scatter-discrete.png + :alt: Streudiagramm + :target: scatter-bubble-charts.html#scatter + + .. grid-item-card:: Heatmap + + .. image:: heatmap.png + :alt: Heatmap + :target: maps.html#heatmap + +Verbindungen +------------ + +.. grid:: 3 + + .. grid-item-card:: Alluvial-Diagramm + + .. image:: flowchart.png + :alt: Alluvial-Diagramm + :target: graph-flowcharts.html#alluvial-diagram + + .. grid-item-card:: Baumdiagramm + + .. image:: treediagram.png + :alt: Baumdiagramm + :target: graph-flowcharts.html#tree-diagram + +Geodaten +-------- + +.. grid:: 3 + + .. grid-item-card:: Choroplethenkarte + + .. image:: map-choropleth.png + :alt: Choroplethenkarte + :target: maps.html#choropleth + + .. grid-item-card:: Symbole für Proportionen + + .. image:: map-proportion.png + :alt: Symbole für Proportionen + :target: maps.html#proportional-symbol + + .. grid-item-card:: Verbindungskartee + + .. image:: map-connecting.png + :alt: Verbindungskartee + :target: maps.html#verbindungskarten + .. toctree:: - :titlesonly: - :maxdepth: 0 - - bar-charts - line-area-charts - piecharts - scatter-bubble-charts - graph-flowcharts - maps + :hidden: + :titlesonly: + :maxdepth: 0 + + bar-charts + line-area-charts + piecharts + scatter-bubble-charts + graph-flowcharts + maps diff --git a/docs/viz/types/line-area-charts.rst b/docs/viz/types/line-area-charts.rst index 2a1b46d..3c3674b 100644 --- a/docs/viz/types/line-area-charts.rst +++ b/docs/viz/types/line-area-charts.rst @@ -1,6 +1,8 @@ Linien- und Flächendiagramme ============================ +.. _line-charts: + Liniendiagramme --------------- @@ -20,6 +22,8 @@ anzeigen und mehrere Datensätze vergleichen. .. figure:: line-curved-timeseries.png :alt: Liniendiagramm mit geschwungenen Kurven für Zeitreihen +.. _area-charts: + Flächendiagramme ---------------- @@ -29,6 +33,8 @@ sind mit Farben oder Mustern gefüllt. .. figure:: area-chart-discrete.png :alt: Flächendiagramm für diskrete Werte +.. _stacked-area: + Gestapelte Flächendiagramm -------------------------- diff --git a/docs/viz/types/maps.rst b/docs/viz/types/maps.rst index 4cedd41..2f58286 100644 --- a/docs/viz/types/maps.rst +++ b/docs/viz/types/maps.rst @@ -1,6 +1,8 @@ Karten ====== +.. _heatmap: + Heatmaps -------- @@ -10,6 +12,8 @@ einzelne in einer Matrix enthaltene Werte als Farben dargestellt werden. .. figure:: heatmap.png :alt: Spitzentemperatur über die Zeit +.. _tree-map: + Tree Maps --------- @@ -18,9 +22,14 @@ Strukturen mit ineinander verschachtelten Rechtecken. Damit können anschaulich Größenverhältnisse dargestellt werden, indem die Fläche der Rechtecke proportional zur Datenmenge dargestellt wird. +.. figure:: treemap.png + :alt: Treemap + Geographische Karten mit Überlagerungen --------------------------------------- +.. _choropleth: + Choroplethenkarten ~~~~~~~~~~~~~~~~~~ @@ -33,6 +42,8 @@ einer Eigenschaft oder Menge in diesen Bereichen anzugeben. Beispiel einer Choroplethenkarte +.. _proportional-symbol: + Symbole für Proportionen ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -45,6 +56,8 @@ Kreisfläche proportional zu ihrem Wert im Datensatz ist. Beispiel eines proportionalen Symbols +.. _connecting-lines: + Verbindungskarten ~~~~~~~~~~~~~~~~~ diff --git a/docs/viz/types/piecharts.rst b/docs/viz/types/piecharts.rst index 0f9f286..b2cf417 100644 --- a/docs/viz/types/piecharts.rst +++ b/docs/viz/types/piecharts.rst @@ -1,18 +1,24 @@ Kreis- und Ringdiagramme ======================== +.. _pie: + Kreisdiagramm ------------- .. figure:: pie.png :alt: Kreisdiagramm +.. _donut: + Ringdiagramm ------------ .. figure:: donut.png :alt: Ringdiagramm +.. _gauge: + Halbkreisförmiges Ringdiagramm ------------------------------ diff --git a/docs/viz/types/scatter-bubble-charts.rst b/docs/viz/types/scatter-bubble-charts.rst index 50cf5a8..e875162 100644 --- a/docs/viz/types/scatter-bubble-charts.rst +++ b/docs/viz/types/scatter-bubble-charts.rst @@ -1,6 +1,8 @@ Streu- und Blasendiagramme ========================== +.. _scatter: + Streudiagramme -------------- @@ -10,6 +12,8 @@ an einer beliebigen Stelle entlang einer Skala zu zeichnen. .. figure:: scatter-timeseries.png .. figure:: scatter-discrete.png +.. _bubble-charts: + Blasendiagramme --------------- diff --git a/docs/viz/types/treemap.png b/docs/viz/types/treemap.png new file mode 100644 index 0000000000000000000000000000000000000000..4f762e91624ed0a6eb235949732e0c332f4fd4b2 GIT binary patch literal 16303 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 PmItfrs#U5yi}>FFM(+|) literal 0 HcmV?d00001