python - 如何从图像上具有不同值的不同像素的坐标数据框创建热图

标签 python python-3.x dataframe coordinates heatmap

我有一个来自 pandas 的数据框,例如:

data frame

在值行中可以找到 0 到 400 之间的数字。 我的想法是根据这个数据框在图像上创建一个热图。数据帧的这个值是同一张照片的不同像素变化。这可能吗?

我试过使用:

print(sns.heatmap(df))

作为数据框的 df。

我无法获取热图,所以我没有尝试将其等 ionic 化为图像。谢谢!!

最佳答案

我从数据框中获取列行:

df[["x", "y"]] = pd.DataFrame(df.Coordinates.to_list())

然后我用 mumpy 创建一个二维数组,其中所有元素的初始值为 0。数组的大小取决于“x”和“y”行的最大值:

import numpy as np
matrix = np.zeros((df.x.max()+1, df.y.max()+1))

然后我们使用 [x,y] 坐标和“值”行填充数组元素:

matrix[df.x, df.y] = df.Value

然后我们使用 seaborn 创建热图:

import seaborn as sns
sns.heatmap(matrix)

Heatmap

关于python - 如何从图像上具有不同值的不同像素的坐标数据框创建热图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62785262/

相关文章:

python-3.x - 故意抽象的子类上的PyCharm "must implement all abstract methods"

python - 用于解析包含 'v.' 的标题的 pyparsing 语法

Python 'ssl' shared_ciphers() 没有记录在案?

python - 在 Python 中读取大文件的惰性方法?

python - opencv imutils 调整视频流大小

Python Pandas 获取行位置名称而不是索引值

python-3.x - 获取 pandas 数据框中两个给定日期之间的月份的结束日期

替换列中出现次数少于 x 次的值

python - 拆分字符串并删除空格 Python

python - 使用 argparse 传递参数后如何将 python 脚本作为批处理作业运行?