Как найти точку пересечения прямых в excel

Как найти точки пересечения графиков в Excel? Например, есть графики, отображающие несколько показателей. Далеко не всегда они будут пересекаться непосредственно на поле диаграммы. Но пользователю нужно показать те значения, в которых линии рассматриваемых явлений пересекаются. Рассмотрим на примере.

Строим графики с точками пересечений

Имеются две функции, по которым нужно построить графики:

Функции.

Выделяем диапазоны данных, на вкладке «Вставка» в группе «Диаграммы» подбираем нужный тип графика. Как:

  1. Нужно найти точки пересечения графиков со значением Х, поэтому столбчатые, круговые, пузырьковые и т.п. диаграммы не выбираем. Это должны быть прямые линии.
  2. Для поиска точек пересечения необходима ось Х. Не условная, на которой невозможно задать другое значение. Должна быть возможность выбирать промежуточные линии между периодами. Обычные графики не подходят. У них горизонтальная ось – общая для всех рядов. Периоды фиксированы. И манипулировать можно только с ними. Выберем точечную диаграмму с прямыми отрезками и маркерами.

График функций.

Для данного типа диаграммы между основными периодами 0, 2, 4, 6 и т.д. можно использовать и промежуточные. Например, 2,5.



Находим точку пересечения графиков в Excel

В табличном редакторе Excel нет встроенной функции для решения подобной задачи. Линии построенных графиков не пересекаются (см. рисунок), поэтому даже визуально точку пересечения найти нельзя. Ищем выход.

Первый способ. Найти общие значения в рядах данных для указанных функций.

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

Данные.

Значения Y одинаковые при Х = 4. Следовательно, точка пересечения двух графиков имеет координаты 4, 5.

Изменим график, добавив новые данные. Получим две пересекающиеся линии.

Точка пересечения.

Второй способ. Применение для решения уравнений специального инструмента «Поиск решения». Кнопка вызова инструмента должна быть на вкладке «Данные». Если нет, нужно добавить из «Надстроек Excel».

Преобразуем уравнения таким образом, чтобы неизвестные были в одной части: y – 1,5 х = -1; y – х = 1. Далее для неизвестных х и y назначим ячейки в Excel. Перепишем уравнения, используя ссылки на эти ячейки.

Уравнение.

Вызываем меню «Поиск решения» – заполняем условия, необходимые для решения уравнений.

Поиск решения.

Нажимаем «Выполнить» – инструмент предлагает решение уравнений.

Решение.

Найденные значения для х и y совпадают с предыдущим решением с помощью составления рядов данных.

Точки пересечения для трех показателей

Существует три показателя, которые измерялись во времени.

Временные показатели.

По условию задачи показатель В имеет постоянную величину на протяжении всех периодов. Это некий норматив. Показатель А зависит от показателя С. Он то выше, то ниже норматива. Строим графики (точечную диаграмму с прямыми отрезками и маркерами).

Точечная диаграмма.

Точки пересечения имеются только у показателей А и В. Но их точные координаты нужно еще определить. Усложним задачу – найдем точки пересечения показателя C с показателями А и В. То есть в какие временные периоды и при каких значениях показателя А линия показателя С пересекает линию норматива.

Точек у нас будет две. Их рассчитаем математическим путем. Сначала найдем точки пересечения показателя А с показателем В:

Формулы и значения.

На рисунке видно, какие значения использовались для расчета. По такой же логике находим значение х для второй точки.

Теперь рассчитаем точки, найденных значений по оси Х с показателем С. Используем близкие формулы:

Пересечение по оси X.

На основе новых данных построим точечные диаграммы на том же поле (где наши графики).

Изменение ряда.

Получается такой рисунок:

График пример.

Для большей информативности и эстетики восприятия добавим пунктирные линии. Их координаты:

Координаты.

Добавим подписи данных – значения показателя C, при которых он пересечет линию норматива.

Подписи данных.

Можно форматировать графики по своему усмотрению – делать их более выразительными и наглядными.

Intersection points can be beneficial in finding insights into the data, As intersections give the same values for different data sets. Excel can help to automate the task of finding the intersection point of two lines by using the =slope() and =intersection() function and replacing their values with the given equations. In this article, we will learn how to find the intersection point of two straight lines in excel.

Procedure to find Intersection

An intersection is a point where 2 curves have the same coordinates. The equation of a straight line can be written asy = mx + c, where m is the slope and c is the intercept of a line. For example, you are given two lines line1:y = m1x + c1 and line2:y1 = m2x + c2 wherem1, c1 are the slope and intersection of line1 andm2, c2 are the slope and intersection of line2. Considering the intersection point to be (a, b).

Following are the steps

Step 1: As, (a, b) is the intersection point of the two lines, which means that (a, b) satisfies the equation of both linesb = m1a + c1 i.e. andb = m2a + c2.

Step 2: Equating the values of b, to find the value of a,m1a+ c1 = m2 + c2. .

Step3: After rearranging the equation, the value of a comes out to be,a = frac{(c_2 - c_1)}{(m_1 - m_2)}.

Step 4: Now, substitute the value of a in any of the equations to find the value of b,b = m1 + c1.

Excel Functions used in Calculating Intersection

There are two excel functions that are helpful in calculating the intersection point of a line.

=SLOPE(y_values, x_values)

The slope function calculates the average slope of a dataset. The slope function takes two arguments, the first argument is the values of y, and the second argument is the values of x.

=INTERCEPT(y_values, x_values)

The intercept function calculates the average intercept of a dataset. The intercept function takes two arguments, the first argument is the values of y, and the second argument is the values of x.

Calculating the intersection of lines in Excel

Generally, the equation of lines is not given, but the data points of the equation are given. We will calculate the intersection using the same procedure as explained above. For example, “Arushi” is a data analyst, and she has been given two data sets, each containing values of x and y. “Arushi” had drawn the graph of the two lines, and she wanted to find the intersection of the lines drawn from the given data set.

Intersection-of-lines

Following are the steps

Step 1: Firstly, we need to find the slope and intersection of both the lines. To do this, make four columns, A9:A12, specifying the name of the intercept and slope of each line.

Slope-of-the-line

Step 2: Cell C9 has to be filled with the slope of the line1. Use =SLOPE() function, to calculate the average slope of the given data points, i.e. =SLOPE(B4:B6, A4:A6).

Slope-function

Step 3: Press Enter. The slope of the line1 is 1.

Slope-of-line-1-obtained

Step 4: Cell C10 has to be filled with the slope of the line2. Use =SLOPE() function, to calculate the average slope of the given data points, i.e. =SLOPE(E4:E6, D4:D6).

Slope-function

Step 5: Press Enter. The slope of the line2 is 2.

Slope-of-line-2-obtained

Step 6: Cell C11 has to be filled with the intercept of the line1. Use =INTERCEPT() function to calculate the average intercept of the given data points, i.e., =INERCEPT(B4:B6, A4:A6).

Intercept-function

Step 7: Press Enter. The intercept of the line1 is 0.

Intercept-of-line-1-obtained

Step 8: Cell C12 has to be filled with the intercept of the line2. Use =INTERCEPT() function to calculate the average intercept of the given data points, i.e., =INERCEPT(E4:E6, D4:D6).

Intercept-function

Step 9: Press Enter. The intercept of the line2 is -1.

Intercept-of-line-2-obtained

Step 10: Now, we have the slope and intercept of both the lines. Now, we have to find the intersection point of the two lines. To do this, make two columns, A15:A16, specifying the name of the point of co-ordinates of the intersection.

X-and-Y-coordinate

Step 11: Cell B15 has to be filled with the x coordinate of lines intersection. Use the formula as explained above to calculate the x co-ordinate of lines intersection.

Formula-applied-for-x-coordinate

Step 12: Press Enter. The x coordinate of the intersection point is 1.

X-coordinate-obtained

Step 13: Cell B16 has to be filled with the y co-ordinate of lines intersection. Use the formula as explained above to calculate the y co-ordinate of lines intersection.

Formula-applied-for-y-coordinate

Step 14: Press Enter. The y coordinate of the intersection point is 1.

Y-coordinate-obtained

Step 15: The intersection point of both lines is (1, 1). We can also see (1, 1) is the intersection point in the graph.

Intersection-points-obtained

Last Updated :
22 Aug, 2022

Like Article

Save Article

Хороший вопрос…

Задали мне тут недавно вопрос. Есть график, на котором имеем 3 показателя работы производства: удельный расход материала, норматив расхода и объём производства, а по горизонтальной оси временной период (недели, например).

Исходные данные выглядят так:

Удельный расход материала зависит от объёма производства. Он то выше, то ниже норматива по итогам периода и возникает естественный вопрос показать на диаграмме те моменты времени и те объёмы производства, когда линия расхода пересекает линию норматива. Может быть эта проблема и лишена какого-то великого смысла, но тем не менее вопрос был задан, значит потребность такая у людей есть.

А это наша конечная цель:

Скачать пример

ChartsIntersection.xlsx

Решение

Шаг 1

Для начала обратим внимание, что исходный тип диаграммы – График с маркерами.

Ряды этого типа описываются так:

Заметьте, что тут нет значений координат по оси X, а есть только координаты по условной оси Y. Этим подразумевается, что условная ось X – общая для всех рядов, а также, что при их построении не используются значения, отличные от заранее фиксированного ряда оси X. Вот есть у нас периоды: 1, 2, 3 и т.д., нанесенные на ось Х, и использовать можно только их. Периода, где X=3.5 не существует для данного типа диаграммы.

Однако, нам для решения этой задачи необходимо, чтобы мы могли задавать любое значение X, в том числе промежуточные, так как наши линии как раз пересекаются где-то “между периодами”. Поэтому тип диаграммы мы меняем для всех рядов с “графика с маркерами” на “точечную с прямыми отрезками и маркерами“.

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

Шаг 2

Теперь нам необходимо нанести на диаграмму дополнительные ряды данных:

  1. Точки пересечения линий расхода материала с нормами расхода. Таких точек у нас будет 3, исходя из условий примера. Эти точки нам необходимо будет расчитать, вспомнив школьный курс геометрии (см. лист Треугольники). В файле учебного примера на листе После в таблице N3:Q5 мы получили координаты нужных точек путем нехитрых формул. Тип диаграммы Точечная в отличие от рядов с показателями работы производства.

  2. Точки пересечения найденных значений по оси X с объемом производства. Расчитывается в таблице N8:Q10 по близким формулам. Тип диаграммы Точечная.

  3. Пунктирные линии, которые мы рисуем из эстетических соображений. Таблица с их координатами находится в N12:P18.

Добавляем ряды данных в соответствии с теми точками, которые мы расчитали. Щёлкните ПКМ по диаграмме и выберите “Выбрать данные…“, далее воспользуйтесь кнопкой “Добавить“.

Пример одного из рядов:

Шаг 3

Отформатируйте линии и маркеры новых рядов данных, так как вам необходимо. Готово! 🙂

Точка пересечения двух прямых на плоскости.

YBX

Дата: Пятница, 02.11.2018, 16:01 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 37


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Добрый день прошу помощи сам разобраться не смог.
Нужно найти точку пересечения АВ двух прямых А и В на плоскости…
Известны две точки через которые проходит прямая А – х1=9, у1=4 и х2=10, у2=6 и две точки через которые проходит прямая В – х1=5, у1=8 и х2=7, у2=9.
Спасибо)

 

Ответить

Апострофф

Дата: Пятница, 02.11.2018, 16:24 |
Сообщение № 2

Группа: Проверенные

Ранг: Обитатель

Сообщений: 422


Репутация:

119

±

Замечаний:
0% ±


Excel 1997

 

Ответить

Pelena

Дата: Пятница, 02.11.2018, 16:25 |
Сообщение № 3

Группа: Админы

Ранг: Местный житель

Сообщений: 18845


Репутация:

4295

±

Замечаний:
±


Excel 2016 & Mac Excel

Здравствуйте.
Вариант через функцию ЛИНЕЙН()

К сообщению приложен файл:

8320648.xlsx
(11.5 Kb)


“Черт возьми, Холмс! Но как??!!”
Ю-money 41001765434816

 

Ответить

_Boroda_

Дата: Пятница, 02.11.2018, 16:32 |
Сообщение № 4

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16620


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Так нужно?


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

YBX

Дата: Пятница, 02.11.2018, 16:36 |
Сообщение № 5

Группа: Пользователи

Ранг: Новичок

Сообщений: 37


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Спасибо всем кто откликнулся, должно быть именно так как вы и предложили hands hands hands … Буду изучать предложенный вариант!

 

Ответить

polinaremez

Дата: Среда, 06.05.2020, 10:38 |
Сообщение № 6

Группа: Пользователи

Ранг: Прохожий

Сообщений: 1


Репутация:

0

±

Замечаний:
0% ±


Excel 2019

Помогите пожалуйста. Не получается посчитать пересечение двух прямых, пробовала через функцию “линейн”, не получается. Эти значения мы вносим и считаем на миллиметровой бумаге (находим расстояние до пересечения в миллиметрах, а потом количество миллиметров умножаем на коэффициент 0,002) , а я хочу сделать это в екселе. Если измерение равно 0,230, например, то значение по графику должно быть где-то 0,243.

К сообщению приложен файл:

4547205.xlsx
(14.9 Kb)

 

Ответить

Pelena

Дата: Среда, 06.05.2020, 14:19 |
Сообщение № 7

Группа: Админы

Ранг: Местный житель

Сообщений: 18845


Репутация:

4295

±

Замечаний:
±


Excel 2016 & Mac Excel

Решение через ЛИНЕЙН()

К сообщению приложен файл:

6301158.xlsx
(16.8 Kb)


“Черт возьми, Холмс! Но как??!!”
Ю-money 41001765434816

 

Ответить

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Изменено: maumaumau19.05.2015 12:48:29

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Оригинальное задание не должно быть более 100 кБ

Вопрос: кому задание?

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Это зачетная работа по информатике

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

maumaumau, кнопка цитирования не для ответа

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Я не справился с третьим заданием, надеюсь на вашу помощь

Изменено: maumaumau19.05.2015 12:27:15

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

#6

19.05.2015 12:22:32

Цитата
vikttur написал:
maumaumau, кнопка цитирования не для ответа

Спасибо, не знал

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Очень прошу, т.к. нужно успеть до послезавтра

 

Doober

Пользователь

Сообщений: 2220
Регистрация: 09.04.2013

Не пойму,в чем проблема.
Формулы есть,свои значения подставили-получили точку пересечения.

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

У меня возникли трудности (я плохо разбираюсь в программе)

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Простите, я не корректно поставил вопрос.
Вот в чем проблема: построил два графика, по имеющейся формуле вычислил точку их пересечения, но поставить эту самую точку не получается

 

TheBestOfTheBest

Пользователь

Сообщений: 2366
Регистрация: 03.04.2015

Excel 2010 +PLEX +SaveToDB +PowerQuery

добавьте в диаграмму третью “кривую” состоящую из одной точки

Неизлечимых болезней нет, есть неизлечимые люди.

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Я кликнул ПКМ по диаграмме и нажал ‘Выбрать данные…’, добавил данные, выбрав координаты точки, но точка появилась не там, где нужно. Может, я что-то не так делаю?

Вот формулы, по которым я нашел
Xp
=(b1_-b2_)/(a2_-a1_)

и Yp
=(a2_*b1_-a1_*b2_)/(a2_-a1_).

То есть, получились координаты точки пересечения.
Вроде все правильно, как по заданию.  

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Но ведь точка должна быть в месте пересечения графиков!

 

Stics

Пользователь

Сообщений: 844
Регистрация: 12.08.2014

Поставьте точку графическими инструментами Excel

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Нужно, чтобы получилось в точности, как здесь

Изменено: maumaumau19.05.2015 13:30:02

 

Doober

Пользователь

Сообщений: 2220
Регистрация: 09.04.2013

Нет слов.

Прикрепленные файлы

  • график.xlsx (36.58 КБ)

 

maumaumau

Пользователь

Сообщений: 11
Регистрация: 19.05.2015

Большое спасибо! Как вам это удалось?

Изменено: maumaumau19.05.2015 14:31:46

 

Doober

Пользователь

Сообщений: 2220
Регистрация: 09.04.2013

#18

19.05.2015 14:55:45

Цитата
maumaumau написал:  Как вам это удалось?

В школе геометрию хорошо учил.8)

<#0>

 

Adler

Пользователь

Сообщений: 6
Регистрация: 22.10.2016

Добрый день!
подскажите пожалуйста, как вывести значение точек пересечения линий ,на графике или в отдельных ячейках? проблема в том что у кривых нету общего значения Х.
прикрепил файл с примером,но задумка намного сложнее, график будет отображать значения из большой базы данных,в которой значения также будут менятся например в зависимости от числа оборотов двигателя, т.е. хотелось бы чтобы точка пересчитовалась автоматически. Заранее благадарю.

Прикрепленные файлы

  • grafik.xlsx (10.97 КБ)

 

Doober

Пользователь

Сообщений: 2220
Регистрация: 09.04.2013

Решайте систему уравнений и находите точку пересечения

 

Adler

Пользователь

Сообщений: 6
Регистрация: 22.10.2016

Решение уровнений тут не поможет, уже решал,это актуально если у вас 1 график . Проблемма в сложности задачи, для тысяч разных графиков,это сделать чисто физически невозможно, поэтому и спрашиваю о возможной автоматизации этого процесса.
Хотя может я и не понял что вы имеете ввиду.  

Изменено: Adler22.10.2016 15:18:40

 

buchlotnik

Пользователь

Сообщений: 3863
Регистрация: 31.10.2014

Excel 365 Бета-канал

#22

22.10.2016 16:20:27

Цитата
для тысяч разных графиков

но нам-то вы эти тысячи не показали, потому и возникает вопрос – в чём проблема? Невозможно предложить автоматизацию не зная исходной структуры данных и конечной задачи

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

Adler

Пользователь

Сообщений: 6
Регистрация: 22.10.2016

принцип построения линий такой же как и в примере,т.е.  2 x X и 2 x Y. Значения  X и Y меняются через выбор из списка необходимого мотора(в моем случае) .В  соответствии с выбором через функции =ИНДЕКС и ПОИСКПОЗ, обнавляются и сами значения в таблице, которые также привязаны к оборотам двигателя.Обороты в свою очередь тоже можно менять,  соответственно меняется и значение X Y. Мне бы просто узнать можно ли как то в рамках эксель определить точку пересечения
(автоматически) или я зря трачу время на поиски решения.

Изменено: Adler22.10.2016 16:45:27

 

buchlotnik

Пользователь

Сообщений: 3863
Регистрация: 31.10.2014

Excel 365 Бета-канал

И опять без файла с вариантами – иксы разные, а игреки совпадают? или их тоже интерполяцией искать? между точками зависимость линейная?

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

Adler

Пользователь

Сообщений: 6
Регистрация: 22.10.2016

и игрики тоже разные,файл я в 19 посте прикрепил.

 

Doober

Пользователь

Сообщений: 2220
Регистрация: 09.04.2013

#26

23.10.2016 10:54:03

Цитата
Adler написал:
т.е. хотелось бы чтобы точка пересчитовалась автоматически

Никто не желает учить математику.

Прикрепленные файлы

  • grafik.xlsm (20.37 КБ)

<#0>

 

Adler

Пользователь

Сообщений: 6
Регистрация: 22.10.2016

#27

23.10.2016 11:29:29

Doober,огромнейшее Вам спасибо.Это то что я искал.

Добавить комментарий