I have a list named data that contains lists of arbitrary size,
data={{0.5, 0.5}, {}, {0.5, 0.5, 0.5}, {}, {}, {}, {}, {}, {}, {}}
I now want to generate for each sub-list the appropriate number of sliders (for the empty sets none, though I believe they are easy to skip). However, I am not sure if this is even possible.
In my quest I stumbled upon this thread, Manipulate with a variable number of sliders, which allows me to generate sliders for one sub-list,
Dynamic[Grid[
Table[With[{i = i}, {Slider[Dynamic[data[[1]][[i]]]],
Dynamic[data[[1]][[i]]]}], {i, Length[data[[1]]]}]]]
This works perfectly fine if I use a constant as an index for data
, in this case 1.
However, if I want to extend this by using a for loop or a table to make that index variable, say
Table[Dynamic[Grid[
Table[With[{i = i}, {Slider[Dynamic[data[[k]][[i]]]],
Dynamic[data[[k]][[i]]]}], {i, Length[data[[k]]]}]]],{k,1,1}]
the k
gets marked red and the code fails. Is it even possible to generate sliders this way? I imagine the reason that the code fails is that Dynamic requires the object under consideration to remain constant, but is there a way around this?