积跬步至千里 || 矩阵可视化

矩阵可视化

矩阵可以很方面地展示事物两两之间的关系,这种关系可以通过矩阵可视化的方式进行简单监控。

定义一个通用类

python 复制代码
from matplotlib import pyplot as plt
import seaborn as sns
import numpy as np
import pandas as pd

class matrix_monitor():
    def __init__(self,min_color=-1,max_color=1,grad=5):
        self.min_color = min_color
        self.max_color = max_color
        self.grad = grad
        
    def fit_transform(self,Matrix):
        data = pd.DataFrame(Matrix)
        #设置色条的刻度:
        tick_=np.arange(self.min_color, self.max_color, self.grad).astype(float)

        #编辑做为参数的字典:
        dict_={'orientation':'vertical',"label":"color  \
        scale","drawedges":True,"ticklocation":"top","extend":"min", \
        "filled":True,"alpha":0.8,"cmap":"cmap","ticks":tick_}

        #将字典传入给参数cbar_kws:
        cmap=sns.heatmap(data,cbar_kws=dict_,center=0.5)

        plt.show()

调用类

python 复制代码
import numpy as np

X = data=np.random.randn(100,10)

model = matrix_monitor()
model.fit_transform(X)

结果展示

另一种方法

python 复制代码
# -*- coding: utf-8 -*-
# @Time    : 2022/9/24 16:33
# @Author  : ***
# @E-mail  : ***
# @File    : draw_heatmap.py

import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import griddata


if __name__ == '__main__':
    
    X, Y = np.meshgrid(np.arange(9,0,-1),np.arange(8,0,-1))

    z = np.array([[0.50183977, 0.561332835, 0.625160768, 0.69396128, 0.759163978, 0.802044391, 0.839099501, 0.845485988,
                   1, ],
                  [0.464608121, 0.514854349, 0.571697125, 0.638777513, 0.707394237, 0.757547047, 0.805266426,
                   0.814383193, 0.819529712, ],
                  [0.42307737, 0.46231148, 0.507083231, 0.566034365, 0.631072187, 0.686196609, 0.743523975, 0.755396779,
                   0.762416452, ],
                  [0.385141269, 0.4129182, 0.44453635, 0.492440329, 0.54721264, 0.601517055, 0.666135176, 0.680423041,
                   0.689101386, ],
                  [0.349207249, 0.366696746, 0.384802277, 0.420102726, 0.461066828, 0.515066771, 0.585729701,
                   0.603058967, 0.613716782, ],
                  [0.330000562, 0.341282639, 0.351972084, 0.379004624, 0.410013296, 0.460646534, 0.534264624,
                   0.553158381, 0.564695194, ],
                  [0.319270694, 0.327231515, 0.333579852, 0.35462508, 0.378290545, 0.426066004, 0.500875256,
                   0.520510426, 0.532623573, ],
                  [0.312393427, 0.31783125, 0.321113142, 0.338438575, 0.357088955, 0.401471861, 0.477147046,
                   0.497178064, 0.509567816, ],
                  ])

    c = plt.pcolormesh(X, Y, z, cmap='viridis_r', shading='gouraud')# 彩虹热力图
    # c = plt.pcolormesh(x_r, y_r, z, cmap='viridis_r')# 普通热力图
    plt.colorbar(c, label='AUPR')
    plt.xlabel('x')
    plt.ylabel('y')
#    plt.savefig('heatmap.tif', dpi=300)
    plt.show()
相关推荐
缘华工业智维2 小时前
工业设备预测性维护:能源成本降低的“隐藏钥匙”?
大数据·网络·人工智能
DooTask官方号3 小时前
跨语言协作新范式:阿里云Qwen-MT与DooTask的翻译技术突破
人工智能·ai·项目管理·机器翻译·dootask
凯禾瑞华养老实训室4 小时前
聚焦生活照护能力培育:老年生活照护实训室建设清单的模块设计与资源整合
大数据·人工智能·科技·ar·vr·智慧养老·智慧健康养老服务与管理
倔强青铜三5 小时前
苦练Python第64天:从零掌握多线程,threading模块全面指南
人工智能·python·面试
格林威5 小时前
偏振相机是否属于不同光谱相机的范围内
图像处理·人工智能·数码相机·计算机视觉·视觉检测·工业相机
A-大程序员5 小时前
【pytorch】合并与分割
人工智能·pytorch·深度学习
AI新兵6 小时前
AI大事记12:Transformer 架构——重塑 NLP 的革命性技术(上)
人工智能·自然语言处理·transformer
Q26433650236 小时前
【有源码】基于Hadoop生态的大数据共享单车数据分析与可视化平台-基于Python与大数据的共享单车多维度数据分析可视化系统
大数据·hadoop·python·机器学习·数据分析·spark·毕业设计
Dongsheng_20196 小时前
【汽车篇】AI深度学习在汽车零部件外观检测——刹车片中的应用
人工智能·汽车
LONGZETECH6 小时前
【龙泽科技】汽车转向悬架与制动安全系统技术1+X仿真教学软件(1.2.3 -初级)
人工智能·科技·汽车·汽车仿真教学软件·汽车教学软件