Выборки, как правило, переходные; вам не нужно держать их рядом, если вы можете так же легко выбрать их из документа. Таким образом, выбор по идентификатору является разумным вариантом.
Если вы не хотите присваивать своим элементам уникальные идентификаторы (что иногда затрудняет создание визуализаций в общем), тогда другой вариант - сохранить ссылку на связанные элементы через связанные данные. Например:
selection.each(function(d) { d.element = this; })
Теперь, предполагая, что те же данные d
связаны с другим элементом, вы можете d3.select(d.element)
выбрать исходный элемент. Вы можете выбрать более конкретное имя, чем «элемент», чтобы было понятно, на какой из двух (исходных и декоративных) элементов вы ссылаетесь.
С другой стороны, если у вас разные данные о разных элементах, вам понадобится другой способ связать их вместе. Если вы не хотите использовать идентификатор или другой подходящий селектор, тогда разумна и карта ссылок.