Java代码工具快速生成词云图(强烈建议收藏)

简介: “词云”一词最早是由美国西北大学新闻学副教授、新媒体专业主任里奇戈登(Rich Gordon)提出的。词云(Word Cloud),又称文字云、标签云(Tag Cloud)、关键词云(Keyword Cloud),是对文本信息中一定数量的关键词出现的频率高低情况的一种可视化展现方式,它一般是由文本数据中提取的词汇组成某些彩色图形。

“词云”一词最早是由美国西北大学新闻学副教授、新媒体专业主任里奇戈登(Rich Gordon)提出的。词云(Word Cloud),又称文字云、标签云(Tag Cloud)、关键词云(Keyword Cloud),是对文本信息中一定数量的关键词出现的频率高低情况的一种可视化展现方式,它一般是由文本数据中提取的词汇组成某些彩色图形。

在网络上查了很多资料,如果用java原生的方式进行代码开发还是非常复杂的,需要一定的时间才能开发出来,费时费力,效果还不一定好。为此百度了大量资料,发现一个平台“昂焱数据”(www.ayshuju.com),该平台上的“代码工具”一栏有Java版的词云生成代码工具,简单调用一下方法就可以生成词云图,这里将该代码工具的使用步骤做一下记录。

第一步:下载并安装jar到本地maven库
登录该网站,在“代码工具”一栏找到“关键词词频与词云图生成”代码工具,代码工具如下图所示:
image.png
下载该代码工具并解压,双击“”执行,将提示的maven坐标粘贴到项目的pom文件中即可。
image.png
image.png
第二步:将该jar包的maven坐标粘贴到项目的pom文件中
image.png
第三步:完整的测试代码如下


import com.angyan.tool.wordcloud.dto.WordCloudConfig;
import com.angyan.tool.wordcloud.util.WordCloudUtil;
import com.angyan.tool.wordcloud.wordcolud.WordCloudEngine;
import com.kennycason.kumo.CollisionMode;
import com.kennycason.kumo.bg.CircleBackground;
import com.kennycason.kumo.font.KumoFont;
import com.kennycason.kumo.font.scale.LinearFontScalar;
import com.kennycason.kumo.image.AngleGenerator;
import java.awt.*;

public class Test {
    public static void main(String[] args) {
        String content="全面推进乡村振兴是新时代建设农业强国的重要任务。要把人力投入、物力配置、财力保障都转移到乡村振兴上来,全面推进产业、人才、文化、生态、组织“五个振兴”。要认真贯彻落实中央一号文件部署要求,坚持农业农村优先发展,坚持城乡融合发展,强化科技创新和制度创新,坚决守牢确保粮食安全、防止规模性返贫等底线,扎实推进乡村发展、乡村建设、乡村治理等重点工作。要抓紧抓好粮食和重要农产品稳产保供,加强农业基础设施建设,强化农业科技和装备支撑,巩固拓展脱贫攻坚成果,推动乡村产业高质量发展,拓宽农民增收致富渠道,扎实推进宜居宜业和美乡村建设,健全党组织领导的乡村治理体系,强化政策保障和体制机制创新。";
        int size = 60;
        String outPath="D:\\workplace\\test\\wordCloud.png";
        // --词云图配置--
        WordCloudConfig wordCloudConfig = new WordCloudConfig();
        // 宽度(px像素)
        wordCloudConfig.setWidth(300);
        // 高度(px像素)
        wordCloudConfig.setHeight(300);
        // 碰撞模式
        wordCloudConfig.setCollisionMode(CollisionMode.PIXEL_PERFECT);
        // 调节词云的稀疏程度,越高越稀疏
        wordCloudConfig.setPadding(2);
        // 背景颜色
        wordCloudConfig.setBackgroundColor(new Color(0, 0, 0));
        // 词云形状,如圆形,半径为宽度的一半
        wordCloudConfig.setBackground(new CircleBackground(150));
        // 设置字体
        wordCloudConfig.setKumoFont(new KumoFont(new Font("楷体", Font.BOLD, 9)));
        // 字号的大小范围,最小是多少,最大是多少
        wordCloudConfig.setFontScalar(new LinearFontScalar(9, 60));
        // 颜色模板,不同频率的颜色会不同
        wordCloudConfig.setColorPalette(WordCloudEngine.buildRandomColorPalette(9));
        // 设置偏转角,角度为0时,字体都是水平的
        wordCloudConfig.setAngleGenerator(new AngleGenerator(0, 0, 2));
        WordCloudUtil.getWordCloudPath(content,size,wordCloudConfig,outPath);
    }
}

运行后,会在“D:/workplace/test”下生成一张“wordCloud.png”图片,具体效果如下:

image.png

目录
相关文章
|
13天前
|
存储 安全 Java
Java Map新玩法:探索HashMap和TreeMap的高级特性,让你的代码更强大!
【10月更文挑战第17天】Java Map新玩法:探索HashMap和TreeMap的高级特性,让你的代码更强大!
36 2
|
13天前
|
存储 Java API
键值对魔法:如何优雅地使用Java Map,让代码更简洁?
键值对魔法:如何优雅地使用Java Map,让代码更简洁?
70 2
|
15天前
|
监控 Java 测试技术
Java开发现在比较缺少什么工具?
【10月更文挑战第15天】Java开发现在比较缺少什么工具?
30 1
|
20天前
|
安全 Java API
Java 17新特性让你的代码起飞!
【10月更文挑战第4天】自Java 8发布以来,Java语言经历了多次重大更新,每一次都引入了令人兴奋的新特性,极大地提升了开发效率和代码质量。本文将带你从Java 8一路走到Java 17,探索那些能让你的代码起飞的关键特性。
67 1
|
6天前
|
XML 安全 Java
Java反射机制:解锁代码的无限可能
Java 反射(Reflection)是Java 的特征之一,它允许程序在运行时动态地访问和操作类的信息,包括类的属性、方法和构造函数。 反射机制能够使程序具备更大的灵活性和扩展性
17 5
Java反射机制:解锁代码的无限可能
|
2天前
|
jenkins Java 测试技术
如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例详细说明
本文介绍了如何使用 Jenkins 自动发布 Java 代码,通过一个电商公司后端服务的实际案例,详细说明了从 Jenkins 安装配置到自动构建、测试和部署的全流程。文中还提供了一个 Jenkinsfile 示例,并分享了实践经验,强调了版本控制、自动化测试等关键点的重要性。
19 3
|
8天前
|
存储 安全 Java
系统安全架构的深度解析与实践:Java代码实现
【11月更文挑战第1天】系统安全架构是保护信息系统免受各种威胁和攻击的关键。作为系统架构师,设计一套完善的系统安全架构不仅需要对各种安全威胁有深入理解,还需要熟练掌握各种安全技术和工具。
34 10
|
3天前
|
分布式计算 Java MaxCompute
ODPS MR节点跑graph连通分量计算代码报错java heap space如何解决
任务启动命令:jar -resources odps-graph-connect-family-2.0-SNAPSHOT.jar -classpath ./odps-graph-connect-family-2.0-SNAPSHOT.jar ConnectFamily 若是设置参数该如何设置
|
2天前
|
Java
Java代码解释++i和i++的五个主要区别
本文介绍了前缀递增(++i)和后缀递增(i++)的区别。两者在独立语句中无差异,但在赋值表达式中,i++ 返回原值,++i 返回新值;在复杂表达式中计算顺序不同;在循环中虽结果相同但使用方式有别。最后通过 `Counter` 类模拟了两者的内部实现原理。
Java代码解释++i和i++的五个主要区别
|
7天前
|
Java 数据格式 索引
使用 Java 字节码工具检查类文件完整性的原理是什么
Java字节码工具通过解析和分析类文件的字节码,检查其结构和内容是否符合Java虚拟机规范,确保类文件的完整性和合法性,防止恶意代码或损坏的类文件影响程序运行。