• 大数据可视化案例一:词云


    词云:

      “词云”这个概念由美国西北大学新闻学副教授、新媒体专业主任里奇·戈登(Rich Gordon)于近日提出。戈登做过编辑、记者,曾担任迈阿密先驱报(Miami Herald)新媒体版的主任。他一直很关注网络内容发布的最新形式——即那些只有互联网可以采用而报纸、广播、电视等其它媒体都望尘莫及的传播方式。通常,这些最新的、最适合网络的传播方式,也是最好的传播方式。 因此,“词云”就是通过形成“关键词云层”或“关键词渲染”,对网络文本中出现频率较高的“关键词”的视觉上的突出。
      词云图过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。
     
      在之前通过爬虫获得新冠肺炎数据之后,使用词云来直观反映哪些地区的疫情较严重。(字越大反映越严重)
      第一步:读取Excel数据
    import openpyxl
    wb = openpyxl.load_workbook('data.xlsx')
    

      第二步:过滤数据并且获得国内疫情数据的地点与确诊人数数据

    ws = wb['国内疫情']
    frequency_in = {}
    for row in ws.values:
        if row[0] == '省份':
            pass
        else:
            frequency_in[row[0]] = float(row[1])
    

      第三步:词云

    from wordcloud import WordCloud
    #中文隶书
    wordcloud = WordCloud(font_path='C:/Windows/Fonts/SIMLI.TTF',
                          background_color="white",
                          width=1920,height=1080)
    

      其中使用C:/Windows/Fonts/SIMLI.TTF表示中文隶书的表示方式,也可以使用其他的表示方式。

      第四步:构建词云

    #数据确诊病例生成词云
    wordcloud.generate_from_frequencies(frequency_in)
    #保存词云
    wordcloud.to_file('wordcloud_in.png')
    

      国内疫情词云结果:

     接下来绘制国外的词云:

    首先从不同的sheet里获取数据:

    frequency_out = {}
    sheet_name = wb.sheetnames
    for each in sheet_name:
        if "洲" in each:
            ws = wb[each]
            for row in ws.values:
                if row[0] == '国家':
                    pass
                else:
                    frequency_out[row[0]] = float(row[1])
    

      

    接下来绘制词云:

    #数据确诊病例生成词云
    wordcloud.generate_from_frequencies(frequency_out)
    #保存词云
    wordcloud.to_file('wordcloud_out.png')
    

      

    结果展示:

     本次内容参考自:

    https://www.jianshu.com/p/5c8b67037a4e

    https://www.bilibili.com/video/bv1X54y1R7cu

  • 相关阅读:
    97. Interleaving String (String; DP)
    140. Word Break II (String; DP,DFS)
    139. Word Break (String; DP)
    120. Triangle(Array; DP)
    132. Palindrome Partitioning II (String; DP)
    91. Decode Ways (Array; DP)
    45. Jump Game II (Array; Two-Pointers,Greedy)
    LeetCode Excel Sheet Column Number
    LeetCode Factorial Trailing Zeroes
    LeetCode SQL: Second Highest Salary
  • 原文地址:https://www.cnblogs.com/zhuozige/p/12933312.html
Copyright © 2020-2023  润新知