python绘制封闭多边形教程
时间:2021-05-19 09:39:51|栏目:Python代码|点击: 次
数据格式:(polygon.txt) 里面含有2个多边形,一行是一个点
0.085, 0.834,
0.024, 0.744,
0, 0.63,
0.024, 0.516,
0.085, 0.427,
0.5, 0.02,
0.675, 0.191,
0.795, 0.071,
0.815, 0.052,
0.835, 0.032,
0.84, 0.026,
0.844, 0.022,
0.856, 0.012,
0.871, 0.005,
0.886, 0.001,
0.903, 0,0.823, 0.061,
0.823, 0.062,
0.826, 0.061,
import pylab as py
import time
from pylab import *
from matplotlib.font_manager import FontProperties
import matplotlib.pyplot as plt
font = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=14)
def readdata(ls):
l = ls.split(',')
if len(l)>2:
return [l[0],l[1]]
else:
return None
if "__main__"==__name__:
print(9)
file_obj=open('fanmaker.txt')
k=0
line=file_obj.readline()
polygon =[]
while line:
k+=1
px=[]
py=[]
while line:
row = readdata(line)
print (line)
px.append(row[0])
py.append(row[1])
line=file_obj.readline()
if line=='\n':
ps=[]
px.append(px[0])
py.append(py[0])
ps.append(px)
ps.append(py)
polygon.append(ps)
line=file_obj.readline()
break
x=np.array(polygon[0][0])
y=np.array(polygon[0][1])
## plt.fill(x,y,'b')
plt.plot(x,y,'b-', linewidth=2)
for i in range(len(polygon)-1):
x=np.array(polygon[i+1][0])
y=np.array(polygon[i+1][1])
## plt.fill(x,y,'b')
plt.plot(x,y,'r-', linewidth=2)
plt.hold(True)
## plt.show()
x1=[-0.5 ,1.5]
x2=[-0.5,-0.5]
x3=[1.5 ,-0.5]
x4=[1.5,1.5]
plt.plot(x1,x2,'-')
plt.plot(x2,x3,'-')
plt.plot(x3,x4,'-')
plt.plot(x4,x1,'-')
plt.axis([-0.5,1.5 ,-0.5,1.5])
plt.show()
# plt.axis('tight')
file_obj.close()

栏 目:Python代码
下一篇:flask 使用 flask_apscheduler 做定时循环任务的实现
本文标题:python绘制封闭多边形教程
本文地址:http://www.codeinn.net/misctech/124347.html






