Как сделать круговую радиолокационную карту

12

Я хочу создать круговую диаграмму в Excel с 8 секторами, как в этом примере:

введите описание изображения здесь

Вместо того, чтобы представлять процент, как на круговой диаграмме, я хочу фактическое значение, как на радиолокационной диаграмме.

Возможно ли это без использования макросов?

KirdApe
источник

Ответы:

26

Это прохождение основано на оригинальном уроке Энди Поупа здесь. Допустим, это те данные, с которых вы начинаете. Перед созданием диаграммы нужно немного поработать с данными.

ценности

В вашем примере мы хотим, чтобы все сектора были одинакового размера, но давайте сделаем вещи гибкими и добавим столбец веса сектора. например, если вы хотите, чтобы «РАБОТА» отображалась как двойной / тройной / четверной размер среза, просто измените вес сектора на 2/3/4 и т. д.

вес сектора

Теперь нам нужно рассчитать пропорции среза, которые должен покрыть каждый сектор. Добавьте столбец с именем «% от 360», разделив вес сектора на сумму весов всех секторов.

=C2/SUM($C$2:$C$9)  

Далее нам нужно рассчитать начальный и конечный углы, которые охватывает каждый сектор. Добавьте столбец «Начальный угол». В верхнем ряду введите 0, затем для каждой строки ниже укажите ячейку выше.

В столбце «Угол завершения» умножьте совокупное значение на «% от 360» на 360.

Начать / Завершить Углы

Теперь хитрость в том, чтобы заставить радиолокационную карту думать, что это круговая диаграмма, состоит в создании точек данных для каждого из 360 градусов в круге.

Давайте расширим нашу таблицу столбцом для каждого угла (в моем примере это затененный серый). Для каждой ячейки добавьте некоторую логику, которая проверяет, покрывается ли угол для этого столбца начальными / конечными углами, и, если это так, возвращает значение для этой строки. Убедитесь, что вы скопировали это для всех строк и столбцов для 0-360 градусов.

=IF(AND(G$1>=$E2,G$1<=$F2),$B2,0)

введите описание изображения здесь

(Примечание. Если вы используете Excel 2003 или более раннюю версию, вам нужно будет перевернуть эту таблицу, чтобы таблица была вертикальной (транспонировать), поскольку число столбцов, используемых этим методом, больше, чем разрешено в старых версиях Excel.)

Теперь мы можем думать о графике. Для большей гибкости добавим столбец «Ярлыки диаграммы» между конечным углом и 0-360 градусами. Я просто собираюсь сослаться на заголовки в столбце А, но вы можете настроить их здесь.

метки диаграммы

Выберите все ячейки в столбцах «Ярлыки диаграммы» и 0–360 (в этом примере G2: ND9). Вставьте диаграмму - под опциями диаграммы радара выберите конечную - «Заполненный радар». Вы получите это.

введите описание изображения здесь

Удалите легенду и круглые метки данных (выделены желтым цветом). Щелкните правой кнопкой мыши по оставшейся оси и выберите «Форматировать ось». Установите для основной единицы значение 10 (ваше максимальное значение), а для вспомогательной единицы - 1. Закройте диалоговое окно, затем удалите номера осей на графике.

Включить главные и второстепенные горизонтальные линии:

круговые линии сетки

Теперь наш график выглядит следующим образом.

введите описание изображения здесь

Установите основной вес линии сетки равным 2pt и черный для внешней границы круга. Если вы хотите, чтобы сегменты отображали второстепенные линии сетки, вам нужно будет изменить цвет заливки каждого сегмента и установить прозрачность (примерно 20-40% прозрачности должно это сделать).

введите описание изображения здесь

Чтобы получить радиальные границы сегмента, нам нужно добавить новую серию. Установите для заголовка ячейку C1 («Вес сектора») и значения для строк в столбце C (C2: C9). Установите метки горизонтальной оси категорий в качестве меток диаграммы (G2: G9).

Измените тип диаграммы для этой новой серии на круговую диаграмму. Удалите заливку для круговых сегментов и добавьте черные границы. Добавьте метки данных для круговой серии, выбрав «Имя категории» вместо «Значение» и установив положение «Внешний конец».

введите описание изображения здесь

РЕДАКТИРОВАТЬ (30 сентября 2014 г.): рабочую книгу можно скачать здесь по запросу Firee.

РЕДАКТИРОВАТЬ 2 (25 марта 2015 г.): Михайло отметил, что эту технику можно немного улучшить:

График заканчивается небольшим смещением против часовой стрелки (как видно на последнем графике выше с красным, имеющим зазор по вертикали, но охватывающим границу на 300 градусов). Это связано с тем, что паучья диаграмма всегда находится позади (т.е. 1 градус нанесен на 2, 2 на 3 и т. Д.),

Быстрое решение этой проблемы - изменить формулу для конечного угла (F2) с =360*SUM($D$2:D2)на =360*SUM($D$2:D2)+1и изменить формулу для первой точки последней серии так, чтобы она совпадала с последней точкой последней серии (в приведенном выше примере сделайте ячейку H9 формула = ND9.

Энди Мор
источник
Ответы только на ссылки не являются хорошими ответами. Может быть, вы можете суммировать шаги вместе с некоторыми фотографиями
nixda
Это нормально, как ты это сделал. Проблема с ответами только для ссылок заключается в том, что ссылки могут исчезнуть / измениться в будущем, что сделает полный ответ бесполезным.
nixda
Отличное решение, Анди. Не могли бы вы загрузить свою книгу для нас, пожалуйста.
Firee
1
Нет проблем - ссылка добавлена ​​:)
Andi Mohr
Блестящий ответ +1
Дейв