大佬教程收集整理的这篇文章主要介绍了使用 Python 在图像上绘制从 Unity 获取的坐标,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 Unity 中收集我的播放器的数据位置,并将它们保存在一个 .csv 文件中。特别是我收集了玩家在游戏中的 x 和 y 位置。
然后我需要在图像上绘制这些点,即游戏地图,以显示玩家在其中的位置。我正在使用 Python
,特别是 @H_224_5@matplotlib 和 PIL
,但我遇到了一些问题。代码如下:
from PIL import Image as img
from PIL import ImageDraw as dr
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
filename = 'player20210325-0.csv'
delimiter = ';'
domus_map_path = 'map.png'
data = pd.read_csv(filename,sep = delimiter,names=['time','x','y','action'],header=NonE)
x = data['x']
y = data['y']
domus_map = img.open(domus_map_path)
domus_map_copy = domus_map.copy()
fig,ax = plt.subplots()
ax.imshow(domus_map_copy,extent = [0,70,-13,13])
for p,q in zip(x,y):
X_COORD = p
Y_COORD = q
plt.scatter([X_COORD],[Y_COORD])
plt.xlabel('X')
plt.ylabel('Y')
plt.show
这给我带来了问题;特别是,情节变成如下图所示:
data plot on image
不知道有没有说清楚;问题是 Y_COORDinates 大约为 0,并假设负值和正值,但它们总是在增长。为了更清楚,我使用以下代码随时间绘制 X_COORDinate 和 Y_COORDinate:
plt.plot(time,x,color = 'b',linewidth = '3',label = 'X_COORD over time')
plt.plot(time,y,color = 'k',label = 'Y_COORD over time')
plt.tight_layout()
plt.xlabel('time')
plt.legend()
plt.show()
结果如下:
data plot in a graph
问题是在 y 轴上,数据不是按从小到大的顺序设置的,而是根据它们在数组中的顺序设置的。
有人可以帮我吗?
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的使用 Python 在图像上绘制从 Unity 获取的坐标全部内容,希望文章能够帮你解决使用 Python 在图像上绘制从 Unity 获取的坐标所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。