Python 3.x 如何使用matplotlib打印线段或向量
我有一个4列的文件,这意味着,坐标(x1,y1)表示起点,(x2,y2)表示终点。我需要画很多线来连接这两点。它有不同的y值,x值是旁边的XTIC数。你能给我推荐一个在同一个绘图中绘制这些线的循环吗Python 3.x 如何使用matplotlib打印线段或向量,python-3.x,matplotlib,Python 3.x,Matplotlib,我有一个4列的文件,这意味着,坐标(x1,y1)表示起点,(x2,y2)表示终点。我需要画很多线来连接这两点。它有不同的y值,x值是旁边的XTIC数。你能给我推荐一个在同一个绘图中绘制这些线的循环吗 2 11.6414 3 9.2395 3 9.23494 4 8.43797 3 9.2395 4 8.43797 1 6.46786 2 1.69241 1 8.76289 2 1.69241 1 8.76289 2 7.04954 2 11.6414 3 9.2395 3 9.2395 4 8.
2 11.6414 3 9.2395
3 9.23494 4 8.43797
3 9.2395 4 8.43797
1 6.46786 2 1.69241
1 8.76289 2 1.69241
1 8.76289 2 7.04954
2 11.6414 3 9.2395
3 9.2395 4 8.43797
4 10.3475 5 9.69117
4 10.7528 5 9.69117
4 10.7528 5 10.3576
4 11.0156 5 9.69117
5 11.199 6 11.021
1 6.46786 2 1.69241
1 8.76289 2 1.69241
4 11.3245 5 11.199
5 11.199 6 11.021
6 11.021 5 9.69117
6 11.021 5 10.3576
在我建议之后
dfr = pd.read_csv('souradnice.csv')
dfr.columns = ['x1', 'y1', 'x2', 'y2']
dfr['dx'] = dfr.x2 - dfr.x1 # rozdíl x-ovových hodnot
dfr['dy'] = dfr.y2 - dfr.y1 # rozdíl y-ových hodnot
q = ax.quiver(dfr.x1, dfr.y1, dfr.dx, dfr.dy, units='xy', scale=1)
ax.set_aspect('equal')
plt.xlim(0, 6)
plt.ylim(0, 12)
使用:
- 使用箭袋需要计算
和dx
dy
将熊猫作为pd导入
df=pd.read\u csv('souradnice.csv',
标题=无,
名称=['x1','y1','x2','y2'],
dtype='float')#如果值以空格分隔,则添加sep='
df['dx']=df.x2-df.x1
df['dy']=df.y2-df.y1
x1 y1 x2 y2 dx dy
2 11.64140 3 9.23950 1 -2.40190
3 9.23494 4 8.43797 1 -0.79697
3 9.23950 4 8.43797 1 -0.80153
1 6.46786 2 1.69241 1 -4.77545
1 8.76289 2 1.69241 1 -7.07048
1 8.76289 2 7.04954 1 -1.71335
2 11.64140 3 9.23950 1 -2.40190
3 9.23950 4 8.43797 1 -0.80153
4 10.34750 5 9.69117 1 -0.65633
4 10.75280 5 9.69117 1 -1.06163
4 10.75280 5 10.35760 1 -0.39520
4 11.01560 5 9.69117 1 -1.32443
5 11.19900 6 11.02100 1 -0.17800
1 6.46786 2 1.69241 1 -4.77545
1 8.76289 2 1.69241 1 -7.07048
4 11.32450 5 11.19900 1 -0.12550
5 11.19900 6 11.02100 1 -0.17800
6 11.02100 5 9.69117 -1 -1.32983
6 11.02100 5 10.35760 -1 -0.66340
绘图:
- 查看
文档,因为有许多参数可用于更改线条和箭头的外观quiver
导入matplotlib.pyplot作为plt
图,ax=plt.子批次(图尺寸=(10,10))
q=最大震颤(df.x1,df.y1,df.dx,df.dy,单位='xy',标度=1)
plt.grid()
ax.set_方面(“相等”)
plt.xlim(0,6)
plt.ylim(0,12)
plt.show()
- 此图显示了1600多个向量的整个数据集