График нормального распределения (или гауссова кривая) — один из самых востребованных инструментов статистического анализа. Его используют в финансах для моделирования рисков, в производстве для контроля качества, в социологии для анализа распределений признаков. Но как перенести эту математическую абстракцию в привычный Microsoft Excel? Многие пользователи ошибочно думают, что для этого нужны специализированные программы вроде R или Python, но на самом деле всё можно сделать прямо в таблицах — без макросов и плагинов.
В этой статье мы разберём три метода построения: от простейшего (с использованием встроенных функций) до продвинутого (с динамическими параметрами и автоматическим пересчётом). Вы узнаете, как правильно подготовить данные, избежать типичных ошибок при масштабировании осей, и даже научитесь накладывать на график реальные выборки для визуального сравнения. А если вы никогда не сталкивались с нормальным распределением — не беспокойтесь: мы начнём с азов теории, чтобы вы понимали, что именно строите, а не просто копировали формулы.
⚠️ Внимание: Если ваша версия Excel старше 2013 года, некоторые функции (например, НОРМ.РАСП) могут отсутствовать. В этом случае используйте альтернативный синтаксис НОРМРАСП (для англоязычных версий — NORM.DIST).
1. Теоретическая основа: что такое нормальное распределение
Нормальное распределение (или распределение Гаусса) — это статистическое распределение, которое описывает многие природные и социальные явления. Его ключевые характеристики:
- 📊 Симметричность: график имеет форму колокола с пиком в центре (мода = медиана = среднее).
- 📏 Параметры: полностью определяется двумя величинами — средним (μ) и стандартным отклонением (σ).
- 🎯 Правило трёх сигм: ~68% данных попадает в интервал
μ ± σ, ~95% — вμ ± 2σ, и ~99.7% — вμ ± 3σ.
В Excel для расчёта плотности вероятности нормального распределения используется функция НОРМ.РАСП(x; среднее; стандартное_откл; ИСТИНА). Последний аргумент (ИСТИНА) указывает, что мы хотим получить именно плотность вероятности (а не кумулятивную функцию распределения).
⚠️ Внимание: Не путайте плотность вероятности с функцией распределения! Если в последнем аргументе указать ЛОЖЬ, Excel вернёт интегральную вероятность (т.е. площадь под кривой от −∞ до x), что не подходит для построения графика колокола.
2. Подготовка данных: создаём основу для графика
Прежде чем строить график, нужно сгенерировать два массива данных:
- Значения по оси X (обычно от
μ − 3σдоμ + 3σс шагом 0.1–0.5). - Значения плотности вероятности (Y), рассчитанные через
НОРМ.РАСП.
Допустим, мы хотим построить график для нормального распределения со средним μ = 50 и стандартным отклонением σ = 10. Вот как это сделать:
| Ячейка | Формула/Значение | Пояснение |
|---|---|---|
A1 | Среднее (μ) | Заголовок столбца |
B1 | 50 | Значение среднего |
A2 | Ст. отклонение (σ) | Заголовок столбца |
B2 | 10 | Значение стандартного отклонения |
A4 | X | Заголовок столбца для значений по оси X |
A5 | =B1-3*B2 | Начальное значение (μ − 3σ = 20) |
Далее заполните столбец A значениями от 20 до 80 (т.е. μ + 3σ) с шагом 0.5. Для этого:
- Введите в
A5формулу=B1-3*B2(результат:20). - В
A6введите=A5+0.5и растяните формулу доA125(чтобы охватить диапазон до80).
Теперь в столбце B (начиная с B5) рассчитайте плотность вероятности:
=НОРМ.РАСП(A5; $B$1; $B$2; ИСТИНА)
Скопируйте эту формулу до B125. Абсолютные ссылки ($B$1, $B$2) гарантируют, что при копировании не сдвинутся параметры μ и σ.
Создать ячейки для μ и σ|Задать начальное значение X как μ − 3σ|Заполнить столбец X с шагом 0.1–0.5|Рассчитать плотность вероятности в столбце Y-->
3. Построение графика: от точек к кривой
Когда данные готовы, переходим к визуализации:
- Выделите диапазон
A4:B125(значения X и Y вместе с заголовками). - Перейдите на вкладку
Вставка → Вставить график → Точечная с гладкими кривыми. - Убедитесь, что по оси X отложены значения из столбца
A, а по Y — изB(при необходимости поменяйте ряды местами черезВыбрать данные).
⚠️ Внимание: Если вместо гладкой кривой вы видите ломаную линию, проверьте:
- 🔹 Шаг между значениями X слишком большой (оптимально: 0.1–0.5).
- 🔹 Тип диаграммы выбран как "Точечная с прямыми отрезками" вместо "с гладкими кривыми".
Чтобы график выглядел профессионально:
- 🎨 Уберите легенду (она не нужна для одной кривой).
- 📌 Добавьте название графика (например, "Нормальное распределение: μ=50, σ=10").
- 📏 Настройте оси: установите минимальное/максимальное значение по X как
μ ± 3σ(в нашем случае20и80).
4. Динамический график: автоматизация параметров
Что если вам нужно быстро перестроить график для других μ и σ? Вместо ручного редактирования формул можно сделать график динамическим:
- Создайте ползунки для
μиσс помощью элемента управленияПолоса прокрутки(вкладкаРазработчик → Вставить → Элементы управления формы). - Свяжите ползунки с ячейками
B1иB2(правая кнопка по ползунку →Формат объекта→ укажите ячейку связи). - Настройте минимальные/максимальные значения ползунков (например, для
μ: от0до100с шагом1).
Критический нюанс: при изменении σ автоматически обновляется диапазон X (μ ± 3σ), поэтому формулы в столбце A должны учитывать новые границы. Используйте конструкцию:
=ЕСЛИ(СТРОКА(A1)-4<=3*$B$2*2; $B$1-3*$B$2+(СТРОКА(A1)-5)*0.5; "")
Эта формула:
- Проверяет, не выходит ли текущая строка за пределы
μ ± 3σ. - Если нет — рассчитывает значение X с шагом
0.5. - Если да — возвращает пустую ячейку (чтобы не отображать лишние точки).
Ручной ввод формул|Динамические ползунки|Готовые шаблоны|Не строю графики в Excel-->
5. Продвинутые техники: сравнение с реальными данными
Нормальное распределение часто используется для сравнения с эмпирическими данными. Например, вы можете наложить на график гистограмму вашей выборки, чтобы визуально оценить, насколько она близка к "идеальному" колоколу.
Как это сделать:
- Поместите реальные данные в отдельный столбец (например,
C5:C125). - Постройте гистограмму:
Вставка → Гистограмма(выберите данные из столбцаC). - Настройте интервалы карманов (bins) гистограммы так, чтобы они совпадали с шагом по оси X вашего графика нормального распределения.
- Комбинируйте оба графика на одном полотне: кликните правой кнопкой по гистограмме →
Изменить тип диаграммы→ выберите "Комбинированная".
⚠️ Внимание: При наложении графиков убедитесь, что:
- 🔢 Масштабы осей Y совпадают (для этого может понадобиться вторичная ось).
- 🎯 Гистограмма нормализована (т.е. площадь под ней равна 1), иначе сравнение с плотностью вероятности будет некорректным.
Как нормализовать гистограмму?
Чтобы привести гистограмму к виду плотности вероятности, разделите высоту каждого столбца на ширину интервала и на общее количество наблюдений. Формула для ячейки с нормализованной высотой:
=ЧАСТОТА(диапазон_данных; интервалы_карманов) / (интервал_кармана * ЧИСЛО(диапазон_данных))
Где интервал_кармана — это разница между соседними значениями на оси X (например, 0.5).
6. Типичные ошибки и как их избежать
Даже опытные пользователи Excel допускают ошибки при построении графика нормального распределения. Вот самые распространённые:
| Ошибка | Причина | Решение |
|---|---|---|
| Кривая "рваная", не гладкая | Слишком большой шаг между значениями X или неправильный тип графика | Уменьшите шаг до 0.1–0.2 или выберите "Точечная с гладкими кривыми" |
| График "срезан" по краям | Диапазон X меньше μ ± 3σ | Расширьте диапазон до μ ± 4σ для полного отображения "хвостов" |
| Пик кривой смещён относительно μ | Ошибка в формуле НОРМ.РАСП (неверно указано среднее) | Проверьте абсолютные ссылки на ячейки с μ и σ |
| Ось Y показывает не плотность, а кумулятивную вероятность | Последний аргумент в НОРМ.РАСП равен ЛОЖЬ | Замените на ИСТИНА для плотности вероятности |
Ещё одна распространённая проблема — несоответствие масштабов при наложении гистограммы и теоретической кривой. Например, если ваша выборка содержит 1000 значений, а высота столбцов гистограммы достигает 200, то плотность вероятности (максимум ~0.08 для σ=10) просто "потонет" на фоне гистограммы. Решение:
- 📊 Постройте гистограмму и кривую на разных осях Y (добавить вторичную ось можно через
Формат ряда данных). - 🔄 Нормализуйте гистограмму (см. спойлер выше).
7. Альтернативные методы: без формул
Если вам не хочется возиться с формулами, есть два альтернативных способа построить график нормального распределения:
- Использование надстройки Analysis ToolPak:
- Активируйте надстройку:
Файл → Параметры → Надстройки → Управление: Надстройки Excel → Перейти → поставьте галочку напротив Analysis ToolPak. - Перейдите на вкладку
Данные → Анализ данных → Гистограмма. - Укажите входной диапазон (ваши данные) и интервалы карманов, поставьте галочку "Вывод графика".
- Активируйте надстройку:
⚠️ Внимание: Analysis ToolPak строит гистограмму, а не теоретическую кривую. Чтобы добавить кривую нормального распределения, придётся вручную рассчитать значения Y (как в методе 1).
Сгенерируйте выборку из нормального распределения с помощью =НОРМ.ОБР(СЛЧИС(); μ; σ), а затем постройте гистограмму по этим данным. Чем больше точек вы сгенерируете (например, 10 000), тем ближе гистограмма будет к теоретической кривой.
Оба метода менее точны, чем ручной расчёт, но могут сэкономить время для быстрого анализа.
FAQ: Ответы на частые вопросы
Можно ли построить график нормального распределения в Excel Online?
Да, но с ограничениями: в веб-версии нет некоторых функций (например, НОРМ.РАСП может называться NORM.DIST на английском). Также отсутствуют элементы управления (ползунки). Для динамических графиков лучше использовать десктопную версию.
Как построить график для стандартного нормального распределения (μ=0, σ=1)?
Просто подставьте в формулы μ = 0 и σ = 1. Диапазон X можно задать от -3 до 3 с шагом 0.1. Формула для Y будет:
=НОРМ.РАСП(A5; 0; 1; ИСТИНА)
Почему моя кривая асимметричная?
Это признак ошибки в данных или формулах. Проверьте:
- Корректность ссылок на
μиσ(они должны быть абсолютными, например$B$1). - Отсутствие скрытых фильтров или сортировок в столбцах X и Y.
- Точность расчётов: иногда округление в ячейках искажает график (увеличьте количество знаков после запятой).
Как экспортировать график в высоком разрешении?
Кликните правой кнопкой по графику → Сохранить как рисунок → выберите формат PNG или JPEG с разрешением не менее 300 dpi. Для векторного формата (например, для вставки в LaTeX) используйте EMF.
Можно ли автоматизировать построение графика через VBA?
Да, вот пример макроса, который строит график нормального распределения для заданных μ и σ:
Sub BuildNormalDistChart()
Dim mu As Double, sigma As Double
mu = Range("B1").Value
sigma = Range("B2").Value
' Очистка старых данных
Range("A5:B125").ClearContents
' Заполнение X и Y
For i = 0 To 120
Cells(i + 5, 1).Value = mu - 3 sigma + i 0.5
Cells(i + 5, 2).Value = Application.WorksheetFunction.Norm_Dist(Cells(i + 5, 1).Value, mu, sigma, False)
Next i
' Построение графика
Dim chartObj As ChartObject
Set chartObj = ActiveSheet.ChartObjects.Add(Left:=100, Width:=600, Top:=50, Height:=400)
chartObj.Chart.ChartType = xlXYScatterSmoothNoMarkers
chartObj.Chart.SetSourceData Source:=Range("A5:B125")
chartObj.Chart.HasTitle = True
chartObj.Chart.ChartTitle.Text = "Нормальное распределение: μ=" & mu & ", σ=" & sigma
End Sub
Чтобы использовать макрос, нажмите Alt + F11, вставьте код в модуль и запустите его через F5.