определить, перекрываются ли пузырьки в диаграмме Excel, или определить точный размер пузырьков - PullRequest
0 голосов
/ 14 января 2019

Я пытаюсь сделать инфографику на основе карты мира и пузырьков, вроде как:

Coffee infographics

Каждый пузырь представляет страну, а размер пузырька - объем производства кофе (в этом примере). Точная позиция страны на самом деле не имеет значения, если она находится в правильной региональной группе, но я не могу позволить пузырям перекрываться.

Поэтому я пытаюсь написать макрос, который будет корректировать координаты X и Y каждой точки данных, чтобы они не перекрывались.

Но для этого мне нужно определить, перекрываются ли пузырьки. Я думаю просто проверить расстояния между центрами пузырьков с помощью X и Y и сравнить с радиусом пузырька.

Отсюда мой вопрос: как я могу определить реальный размер пузырьков? (не с масштабом, а с фактическим размером пузыря, учитывая масштаб). Я заметил, что они корректируются на основе самого большого, который, кажется, является фиксированной пропорцией наименьшего измерения площади участка. Пока что это кажется R = ~ 1,29 x наименьшее измерение площади графика, но всегда ли это так?

Кроме того, если мне нужно изменить масштаб, как именно он изменит размер пузырька? (шкала 200, похоже, не соответствует квадрату (2) большего радиуса)

Заранее большое спасибо!

Люк

1 Ответ

0 голосов
/ 14 января 2019
Sub y()

Dim c As Chart
Dim s As Series
Dim p As Point

Set c = ActiveSheet.ChartObjects(1).Chart
Set s = c.SeriesCollection(1)
Set p = s.Points(1)

Debug.Print p.Left, p.Top, p.Width, p.Height         '   Will be the same height & width as circle.

End Sub
...