In this blog, we will draw properties of triangle using matplotlib module. In this way, students can easily visualize the properties of triangles and learn faster.
In [1]:
import matplotlib.pyplot as plt
In [2]:
plt.plot(0, 0, color = 'red', marker = 'o', markersize = 10)
plt.show()
First point(0, 0) shift to left 5. Then create two more points and connect all three points so that it will become a triangle.
In [3]:
plt.plot(-5, 0, marker = 'o', markersize = 10)
plt.plot(10, 0, marker = 'o', markersize = 10)
plt.plot(0, 8, marker = 'o', markersize = 10)
#connecting all three points to make triangle
plt.plot(
(-5, 10, 0, -5),
(0, 0, 8, 0)
)
plt.show()
In [4]:
plt.plot(-5, 0, marker = 'o', markersize = 10)
plt.plot(10, 0, marker = 'o', markersize = 10)
plt.plot(0, 8, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(-5, 10, 0, -5),
(0, 0, 8, 0)
)
# name of the points
plt.text(-5.9, 0, 'A')
plt.text(10.4, 0, 'B')
plt.text(0, 8.3, 'C')
plt.show()
In [5]:
plt.plot(-5, 0, marker = 'o', markersize = 10)
plt.plot(10, 0, marker = 'o', markersize = 10)
plt.plot(0, 8, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(-5, 10, 0, -5),
(0, 0, 8, 0)
)
# name of the points
plt.text(-5.9, 0, 'A')
plt.text(10.4, 0, 'B')
plt.text(0, 8.3, 'C')
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
We will change all x and y coordnates in variables.
In [6]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
A median of a triangle is a straight line through a vertex and the midpoint of the opposite side, and divides the triangle into two equal areas.
In [7]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#mid point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [8]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#mid point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#median 1
plt.plot(
(x3, m1x ),
(y3, m1y )
)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [9]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#middle point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#median from C to AB
plt.plot(
(x3, m1x ),
(y3, m1y )
)
#middle point of AC
m2x = (x1 + x3) / 2
m2y = (y1 + y3) / 2
plt.plot(m2x, m2y, marker = 'o', color = 'black')
plt.text(m2x - 1.5, m2y, 'M2')
#middle point of B to AC
plt.plot(
(x2, m2x),
(y2, m2y)
)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [10]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#middle point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#median from C to AB
plt.plot(
(x3, m1x ),
(y3, m1y )
)
#middle point of AC
m2x = (x1 + x3) / 2
m2y = (y1 + y3) / 2
plt.plot(m2x, m2y, marker = 'o', color = 'black')
plt.text(m2x - 1.5, m2y, 'M2')
#middle point of B to AC
plt.plot(
(x2, m2x),
(y2, m2y)
)
#median from A to BC
m3x = (x2 + x3)/2
m3y = (y2 + y3)/2
plt.plot(m3x , m3y, marker= 'o' , color ='violet')
plt.text(m3x , m3y , 'M3')
plt.plot(
(x1, m3x),
(y1, m3y)
)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
The three medians intersect at a single point, that point is the triangle's centroid.
In [11]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 0.9, y1, 'A')
plt.text(x2 + 0.4, y2, 'B')
plt.text(x3, y3 + 0.3, 'C')
#middle point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#median from C to AB
plt.plot(
(x3, m1x ),
(y3, m1y )
)
#middle point of AC
m2x = (x1 + x3) / 2
m2y = (y1 + y3) / 2
plt.plot(m2x, m2y, marker = 'o', color = 'black')
plt.text(m2x - 1.5, m2y, 'M2')
#middle point of B to AC
plt.plot(
(x2, m2x),
(y2, m2y)
)
#median from A to BC
m3x = (x2 + x3)/2
m3y = (y2 + y3)/2
plt.plot(m3x , m3y, marker= 'o' , color ='violet')
plt.text(m3x , m3y , 'M3')
plt.plot(
(x1, m3x),
(y1, m3y)
)
#centroid
mx = (x1 + x2 + x3)/3
my = (y1 + y2 + y3)/3
plt.plot( mx, my, marker = 'o', color = 'orange')
plt.text(mx, my+.5 , 'M')
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [12]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 2.3, y1 + 0.3, f'A({x1}, {y1})')
plt.text(x2 + 0.4, y2, f'B({x2}, {y2})')
plt.text(x3, y3 + 0.3, f'C({x3}, {y3})')
#middle point of AB
m1x = (x1 + x2)/2
m1y = (y1 + y2)/2
plt.plot(m1x, m1y, marker = 'o', color = 'red')
plt.text(m1x, m1y-.5, 'M1')
#median from C to AB
plt.plot(
(x3, m1x ),
(y3, m1y )
)
#middle point of AC
m2x = (x1 + x3) / 2
m2y = (y1 + y3) / 2
plt.plot(m2x, m2y, marker = 'o', color = 'black')
plt.text(m2x - 1.5, m2y, 'M2')
#middle point of B to AC
plt.plot(
(x2, m2x),
(y2, m2y)
)
#median from A to BC
m3x = (x2 + x3)/2
m3y = (y2 + y3)/2
plt.plot(m3x , m3y, marker= 'o' , color ='violet')
plt.text(m3x , m3y , 'M3')
plt.plot(
(x1, m3x),
(y1, m3y)
)
#centeroid
mx = (x1 + x2 + x3)/3
my = (y1 + y2 + y3)/3
plt.plot( mx, my, marker = 'o', color = 'orange')
plt.text(mx, my+.5 , 'M')
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
Now we will find the distance between AB, BC, CA. The distance between points (x1, y1) and (x2, y2) in the plane is given by:
In [13]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 2.3, y1 + 0.3, f'A({x1}, {y1})')
plt.text(x2 + 0.4, y2, f'B({x2}, {y2})')
plt.text(x3, y3 + 0.3, f'C({x3}, {y3})')
# AB distance
ABx = (x1 + x2) / 2
ABy = (y1 + y2) / 2
plt.text(ABx, ABy - 0.6, f'AB({x2 - x1}, {y2 - y1})')
# BC distance
BCx = (x2 + x3) / 2
BCy = (y2 + y3) / 2
plt.text(BCx - 2, BCy + 0.4, f'BC({x3 - x2}, {y3 - y2})', rotation = -50)
# CA distance
CAx = (x3 + x1) / 2
CAy = (y3 + y1) / 2
plt.text(CAx - 1.3, CAy, f'AC({x1 - x3}, {y1 - y3})', rotation = 65)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [14]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 2.3, y1 + 0.3, f'A({x1}, {y1})')
plt.text(x2 + 0.4, y2, f'B({x2}, {y2})')
plt.text(x3, y3 + 0.3, f'C({x3}, {y3})')
# AB distance
ABsqr = (x2 - x1) ** 2 + (y2 - y1) ** 2
print(ABsqr)
ABx = (x1 + x2) / 2
ABy = (y1 + y2) / 2
plt.text(ABx, ABy - 0.6, f'AB({x2 - x1}, {y2 - y1})')
# BC distance
BCsqr = (x3 - x2) ** 2 + (y3 - y2) ** 2
print(BCsqr)
BCx = (x2 + x3) / 2
BCy = (y2 + y3) / 2
plt.text(BCx - 2, BCy + 0.4, f'BC({x3 - x2}, {y3 - y2})', rotation = -50)
# CA distance
CAsqr = (x1 - x3) ** 2 + (y1 - y3) ** 2
print(CAsqr)
CAx = (x3 + x1) / 2
CAy = (y3 + y1) / 2
plt.text(CAx - 1.3, CAy, f'AC({x1 - x3}, {y1 - y3})', rotation = 65)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [15]:
x1, y1 = -5, 0
x2, y2 = 10, 0
x3, y3 = 0, 8
plt.plot(x1, y1, marker = 'o', markersize = 10)
plt.plot(x2, y2, marker = 'o', markersize = 10)
plt.plot(x3, y3, marker = 'o', markersize = 10)
# connecting all three points to make triangle
plt.plot(
(x1, x2, x3, x1),
(y1, y2, y3, y1)
)
# name of the points
plt.text(x1 - 2.3, y1 + 0.3, f'A({x1}, {y1})')
plt.text(x2 + 0.4, y2, f'B({x2}, {y2})')
plt.text(x3, y3 + 0.3, f'C({x3}, {y3})')
# AB distance
ABsqr = (x2 - x1) ** 2 + (y2 - y1) ** 2
#print(ABsqr)
AB = ABsqr ** 0.5
ABx = (x1 + x2) / 2
ABy = (y1 + y2) / 2
plt.text(ABx, ABy - 0.6, f'AB({x2 - x1}, {y2 - y1}) = {AB}')
# BC distance
BCsqr = (x3 - x2) ** 2 + (y3 - y2) ** 2
#print(BCsqr)
BC = round( BCsqr ** 0.5, 2 )
BCx = (x2 + x3) / 2
BCy = (y2 + y3) / 2
plt.text(BCx - 2, BCy - 1, f'BC({x3 - x2}, {y3 - y2}) = {BC}', rotation = -50)
# CA distance
CAsqr = (x1 - x3) ** 2 + (y1 - y3) ** 2
#print(CAsqr)
CA = round( CAsqr ** 0.5, 2 )
CAx = (x3 + x1) / 2
CAy = (y3 + y1) / 2
plt.text(CAx - 1.3, CAy, f'AC({x1 - x3}, {y1 - y3}) = {CA}', rotation = 65)
#set the xlim and ylim
plt.xlim(-10,15)
plt.ylim(-2,10)
plt.show()
In [ ]:
In [ ]: