微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Python 中创建实时颜色图?

如何解决如何在 Python 中创建实时颜色图?

我正在尝试创建实时颜色图。我想不断地稍微改变矩阵中某些元素的 RGB 值来组成我的颜色图。我从 excel 文件中读取数据,我的部分数据如下所示

enter image description here

然后我想像视频一样在一张图中显示我的颜色图中的颜色变化。我试过这个代码

df=pd.read_excel(r"G:\3Y_individualProject\Crop_color_data.xlsx",usecols="C:E")
color_data_2d=np.array(df.iloc[0:101])
color_data_1d=np.reshape(color_data_2d,(300))
color_data=color_data_1d.reshape(5,20,3)

for x in range(5):
    fig,ax = plt.subplots()
    ax.imshow(color_data)
    ax.set_aspect("equal")
    plt.pause(0.05)
    for i in range(3):
        color_data[0,1,i]=color_data[0,i]+0.1
        color_data[1,i]=color_data[1,i]+0.2
        color_data[2,i]+0.25
        print(color_data)

但它绘制了许多不同的图形,而不是像我预期的那样将它们显示在图形中。我也只是尝试学习和使用 matplotlib.animation。我试过下面的代码

from matplotlib import pyplot as plt
import pandas as pd
import numpy as np
from matplotlib import cm
from matplotlib.animation import FuncAnimation
from matplotlib.colors import ListedColormap,LinearSegmentedColormap
import itertools

def changeColor(x):
    
    fig,ax = plt.subplots()
    ax.imshow(color_data)
    ax.set_aspect("equal")
    
    for i in range(3):
        color_data[0,i]+0.25

results=FuncAnimation(plt.gcf(),changeColor,interval=5)

plt.tight_layout()      
plt.show()

但是使用该代码,我的图甚至没有显示任何内容。如前所述,我对 matplotlib.animation 很陌生,所以有人可以告诉我如何使用 matplotlib.animation 或任何其他方式来绘制实时彩色地图吗?非常感谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。