通过输入点坐标,让点动起来
上效果图:
详细代码
# coding=utf-8
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family'] = 'SimHei'
while True:
#一起输入数字,如:5 7
x,y=input('two numbers(如:5 7):').split()
x = float(x)
y = float(y)
#画点
plt.plot(x, y, 'o')
#确定两坐标轴刻度从0-20
plt.xlim(0,20)
plt.ylim(0,20)
plt.xticks([i for i in range(21)])
plt.yticks([i for i in range(21)])
plt.annotate('A ({},{})'.format(x,y),xy=(x,y),xytext=(x+0.21,y+0.21),
fontsize = 16)
plt.annotate('原点O', xy=(0, 0), xytext=(-2, -1.5),
fontsize=12)
#垂直于x轴的虚线
plt.plot([x,x],[y,0],'k--',lw=1.2)
#垂直于y轴的虚线
plt.plot([x, 0], [y, y], 'k--', lw=1.2)
#点与原点连线
plt.plot([0,x],[0,y],'-.',lw = 2)
#隐藏top,right轴
ax = plt.gca()
ax.spines['top'].set_color('None')
ax.spines['right'].set_color('None')
plt.title('动点在坐标平面内任意移动的效果', fontsize=16)
plt.show()