plt.gca().set_aspect('auto')
gx = grid_step
while gx <= w:
plt.axvline(x=gx, color='gray', linestyle='dotted')
gx += grid_step
gy = grid_step
while gy <= h:
plt.axhline(y=gy, color='gray', linestyle='dotted')
gy += grid_step
x = [0, 0, 100, 300, 500]
y = [0, 200, 400, 500, 500]
col = "red"
plt.plot(x, y, linewidth=3, marker='o', color=col)
plt.text((x[0]+x[1])/2+20, (y[0]+y[1])/2+40, "-B-", color=col)
plt.text((x[1]+x[2])/2-20, (y[1]+y[2])/2+20, "-BC", color=col)
plt.text((x[2]+x[3])/2-20, (y[2]+y[3])/2+20, "AB-", color=col)
plt.text((x[3]+x[4])/2-85, (y[3]+y[4])/2-15, "A--, --C", color=col)
a = [0, 100, 400, 500, 500]
b = [0, 400, 500, 500, 500]
col = "blue"
plt.plot(a, b, linewidth=3, marker='o', color=col)
plt.text((a[0]+a[1])/2+20, (b[0]+b[1])/2-20, "B\\A", color=col)
plt.text((a[1]+a[2])/2+20, (b[1]+b[2])/2-20, "A", color=col)
plt.text((a[2]+a[3])/2+0, (b[2]+b[3])/2-20, "C\\B\\A", color=col)
plt.show()