Add a visualization like the following
Add the feature to create plots like
adjusted from https://tex.stackexchange.com/a/738090/98739
Here is the code which needs to be adjusted
\begin{filecontents*}[overwrite]{data-mwe.csv}
NHR4CES@RWTH,{DAPHNE4NFDI, NFDI-MatWerk, NFDI4Cat, NFDI4Chem, NFDI4DataScience, NFDI4Energy, NFDI4ING, NFDI4Microbiota, NFDIxCS}
NHR4CES@KIT,{DAPHNE4NFDI, FAIRmat, NFDI-MatWerk, NFDI4Cat, NFDI4Chem, NFDI4Earth, NFDI4Energy, NFDI4ING, NFDIxCS, PUNCH4NFDI}
NHR@FAU,{DAPHNE4NFDI, NFDI-MatWerk, NFDI4Cat, NFDI4Energy}
NHR@Göttingen,{DAPHNE4NFDI, NFDI4Biodiversity, NFDI4Health, NFDIxCS, PUNCH4NFDI, Text+}
NHR@PC²,{NFDI4Culture, NFDIxCS}
NHR@SW,{DataPLANT, GHGA, MaRDI, NFDI-MatWerk, NFDI4Chem, NFDI4Earth, NFDIxCS, PUNCH4NFDI}
NHR@TU Dresden,{Base4NFDI, GHGA, NFDI4DataScience, NFDI4Earth, NFDI4ING, NFDI4Immuno, NFDIxCS, PUNCH4NFDI}
NHR@TUDa,{NFDI4ING, NFDIxCS}
NHR@ZIB,{DAPHNE4NFDI, FAIRmat, MaRDI, NFDI4Cat, NFDI4DataScience, NFDI4Memory}
\end{filecontents*}
\documentclass[border=6pt]{standalone}
\usepackage{wheelchart}
\usetikzlibrary{decorations.text}
\usepackage[RGB]{xcolor}
\definecolor{social}{RGB}{241, 191, 91}
\definecolor{engineer}{RGB}{89, 184, 234}
\definecolor{life}{RGB}{213, 66, 81}
\definecolor{natural}{RGB}{169, 197, 65}
\definecolor{myblue}{RGB}{0, 84,159}
\begin{document}
\ExplSyntaxOn
\clist_const:Nn \c_ddv_colors_clist { gray , social,social, social, engineer, engineer, engineer, engineer, engineer, life, life, life, life, life, natural, natural, natural, natural, natural, natural, natural }
\clist_new:N \l_ddv_nhr_clist
\int_new:N \l_ddv_nhr_int
\ior_new:N \g_ddv_read_ior
\seq_set_from_clist:Nn \c_ddv_nfdi_seq {Base4NFDI,NFDI4Culture,NFDI4Memory, Text+, NFDI4DataScience, NFDI4Energy, NFDI4ING, NFDI-MatWerk, NFDIxCS, DataPLANT, NFDI4Immuno, GHGA, NFDI4Biodiversity, NFDI4Microbiota, DAPHNE4NFDI, FAIRmat, NFDI4Cat, MaRDI, NFDI4Chem, NFDI4Earth, PUNCH4NFDI}
\tl_new:N \l_ddv_color_tl
\NewDocumentCommand \readdata {}
{
\ior_open:Nn \g_ddv_read_ior { data-mwe.csv }
\ior_map_inline:Nn \g_ddv_read_ior
{
\int_if_zero:nF { \l_ddv_nhr_int }
{
\clist_put_right:Ne \l_ddv_nhr_clist { \clist_item:nn {##1} { 1 } }
\clist_const:ce { c_ddv_person_\int_use:N \l_ddv_nhr_int _clist } { \clist_item:nn {##1} { 2 } }
}
\int_incr:N \l_ddv_nhr_int
}
\int_decr:N \l_ddv_nhr_int
\ior_close:N \g_ddv_read_ior
}
\ExplSyntaxOff
\readdata
\begin{tikzpicture}
\ExplSyntaxOn
\pgfkeys
{
/ wheelchart ,
gap = .1 , % Gap between slices
gap~radius ,
total~count = \l_ddv_nhr_int
}
\seq_map_indexed_inline:Nn \c_ddv_nfdi_seq
{
\wheelchart
[
radius = { 1 + #1 } { 2 + #1 } ,
slices~style =
{
/ utils / exec =
{
\clist_if_in:cnTF
{ c_ddv_person_\WCcount _clist }
{#2}
{ \tl_set:Nn \l_ddv_color_tl { \clist_item:Nn \c_ddv_colors_clist {#1} } }
{ \tl_set:Nn \l_ddv_color_tl { none } }
} ,
fill = \l_ddv_color_tl
}
]
{}
}
\wheelchart
[
arc~data = | \fontsize { 30 } { 0 } \selectfont \bfseries\sffamily| \clist_item:Nn \l_ddv_nhr_clist { \WCcount } , % Data for each stage (size of text)
arc~data~dir = { \WCmidangle < 180 ? 1 : -1 } , % Direction of data (text) placement
arc~data~pos = 0.5 , % Position of data (text) on arc
arc~data~style = { text~color = white } , % Style for text on arc
radius = { \seq_count:N \c_ddv_nfdi_seq + 2 } { \seq_count:N \c_ddv_nfdi_seq + 5 } , % Radius of the wheel chart
slices~arrow = { 0 } { 0 } , % Arrow style for slices
% slices~Arrow = 10 ,
slices~style = myblue , % Style for slices (using defined color)
]
{}
\ExplSyntaxOff
\end{tikzpicture}
\end{document}
Edited by Lukas C. Bossert
