2017-02-20 21 views
1

Может ли кто-нибудь указать мне, как я могу изменить https://bl.ocks.org/mbostock/4063269 так, чтобы круги имели минимальный радиус?Как установить минимальный радиус для пакета Circle Pack в D3JS?

Если круги имеют действительно небольшой радиус, их внутренний текст скрыт, чего я бы хотел избежать.

+0

Это должно быть полезно https://www.dashingd3js.com/svg-text-element – shv22

ответ

0

Вы можете установить минимальный размер окружностей, используя разные подходы. Этот ответ относится к pack.radius:

Если задан радиус, задает радиус-аксессуар макета пакета указанной функции и возвращает этот макет пакета.

Во-первых, мы установили масштаб. Вы можете видеть, что минимальное значение здесь 20 (и максимум 50):

var sizeScale = d3.scaleSqrt() 
    .range([20,50]); 

Затем мы используем эту шкалу в pack.radius:

Вот демо, используя один и тот же код, который вы связанный с Майком Бостоком: https://bl.ocks.org/anonymous/9590a06db119c7a67acdfd3c5b5f1e0a

+0

Мне было не очень удобно писать этот ответ, потому что этот вопрос касается чего-то, что мне действительно важно: говоря правду с данными ... или , еще лучше, а не ** лежать с данными **. Изменение размера кругов только для отображения текста - это некая ложь, потому что размер окружностей кодирует информацию. –