• 技术文章 >Python技术 >Python基础教程

    python热力图的原理实现

    小妮浅浅小妮浅浅2021-01-29 14:22:03原创3784

    在我们想要对不同变量进行判断的时候,会分析其中的之间的联系。这种理念同样也被用在实例生活中,最常见到的是做一个地理的热力图。很多人对画热力图的方法不是很清楚,我们可以先装好相关的工具,了解一些使用参数,然后在实例中进行画热力图的实例体验,下面就来看看具体的方法吧。

    1.导入相关的packages

    1

    2

    3

    import seaborn as sns

    %matplotlib inline

    sns.set(font_scale=1.5)

    2.参数

    vmax:设置颜色带的值

    vmin:设置颜色带的最小值

    cmap:设置颜色带的色系

    center:设置颜色带的分界线

    annot:是否显示数值注释

    fmt:format的缩写,设置数值的格式化形式

    linewidths:控制每个小方格之间的间距

    linecolor:控制分割线的颜色

    cbar_kws:关于颜色带的设置

    mask:传入布尔型矩阵,若为矩阵内为True,则热力图相应的位置的数据将会被屏蔽掉(常用在绘制相关系数矩阵图)

    3.实例

    Python生成heatmap比较简单,导入googlmap然后把经纬度plot在地图上就可以了。最后把heatmap生成为一个html文件,可以放大和缩小。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    import gmplot             # plot the locations on google map

    import numpy as np        # linear algebra

    import pandas as pd       # data processing, CSV file I/O (e.g. pd.read_csv())

    import matplotlib.pyplot as plt  # data visualization

    import seaborn as sns       # data visualization

      

      

    df = pd.read_csv("data.csv")

    df = pd.DataFrame(df)

    df_td = pd.read_csv("datacopy.csv")

    df_td = pd.DataFrame(df_td)

    # print df.dtypes

    print (df.shape)

    print (df_td.shape)

      

    def plot_heat_map(data, number):

        latitude_array = data['INTPTLAT'].values

        latitude_list = latitude_array.tolist()

        print(latitude_list[0])

      

        Longitude_array = data['INTPTLONG'].values

        longitude_list = Longitude_array.tolist()

        print(longitude_list[0])

      

        # Initialize the map to the first location in the list

        gmap = gmplot.GoogleMapPlotter(latitude_list[0], longitude_list[0], 10)

      

        # gmap.scatter(latitude_list, longitude_list, edge_width=10)

        gmap.heatmap(latitude_list, longitude_list)

      

        # Write the map in an HTML file

        # gmap.draw('Paths_map.html')

        gmap.draw('{}_Paths_map.html'.format(number))

      

      

    plot_heat_map(df,'4')

    以上就是python热力图的原理实现,大家可以先跟着代码试验一下,看看是否能运行出相关的热力图,然后就其中的一些知识点进行学习。

    专题推荐:python热力图
    上一篇:python中创建numpy数组的方法有哪些? 下一篇:python中numpy数组与list如何相互转换?

    相关文章推荐

    • python中string和float之间的转换• python有几种可视化图形库?• python中如何使用pandas实现行数据添加• python中写入文件的出错解决• python中len是什么意思?• Python中实现Numpy数组遍历的两种方法• python中定时器的实现方式

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网