格式塔原理:数据可视化如何引导观众的注意力
在数据分析中,我们常说:“一张好的图表胜过千言万语。” 但很多时候,我们做出来的图表却是“千言万语堵在心口难开”。读者看了半天,抓不住重点。 这是为什么? 因为人类的视觉感知遵循一套被称为 格式塔(Gestalt) 的心理学原理。 简单来说,当我们看到一组物体时,大脑会自动将它们视为一个整体或一种模 ...
Python描述器(Descriptor)深度解析:OOP底层核心机制实操指南
前言:在Python面向对象(OOP)编程中,描述器是支撑诸多高级特性的底层核心机制——property、classmethod、staticmethod、甚至ORM框架的字段定义(如Django ORM的models.CharField),本质都是描述器的应用。但多数Python学习者停留在“使用 ...
springboot~传统WEB应用开启CSRF
CSRF 是什么? CSRF(Cross-Site Request Forgery,跨站请求伪造) 是一种常见的Web安全漏洞。攻击者利用受害者已经登录的合法会话,诱使受害者执行非本意的操作。 简单比喻: 想象你在咖啡店会员卡里有钱,你每次消费只需要说“用会员卡支付”。攻击者伪装成服务员,在你面前说 ...
剑指offer-57、二叉树的下一个节点
题⽬描述 给定⼀个⼆叉树和其中的⼀个结点,请找出中序遍历顺序的下⼀个结点并且返回。注意,树中的结点不仅包含左右⼦结点,同时包含指向⽗结点的指针。 复杂的节点结构如下: public class TreeLinkNode { int val; TreeLinkNode left = null; Tre ...
回归分析全家桶(16种回归模型实现方式总结)
提到回归分析,很多人第一时间想到的只有“线性回归”和“逻辑回归”。但实际上,针对不同的数据情况(比如有离群点、数据是计数的、数据有缺失截断等),我们有十几种回归模型可以选择。 今天为大家总结了 16种回归分析 的模型,重点不是介绍这些回归模型的原理,而是介绍如何在Python代码中使用这些模型,希望 ...
【开源工具分享】一款开源的高效PDF合并与图片转换工具:mergePDF,一款轻量级桌面可视化工具,支持将多个PDF文件合并为单一PDF,也可将PDF转换为图片格式,并提供“单张图片”与“长图片”两种
mergePDF介绍 mergePDF是一款开源、免费、高效的PDF合并与图片转换工具 工具简介 mergePDF 是一款轻量级桌面可视化工具,支持将多个PDF文件合并为单一PDF,也可将PDF转换为图片格式,并提供“单张图片”与“长图片”两种输出模式,便于文档整理、票据归档与打印优化。 别名:发票 ...
jvm~分析gc老年代内存过高的原因
gc的老年代内存高居不下,导致最后full gc的发生,我们需要通过分析gc dump文件来解决biggest objects过多的问题 生成dump文件 在keycloak容器中安装轻量级工具 microdnf install -y wget microdnf install -y procps- ...
剑指offer-56、删除链表中重复的节点
题⽬描述 在⼀个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表 1->2->3->3->4->4->5 处理后为 1->2->5 示例1 输⼊:{1,2,3,3,4,4,5} 返回值:{1,2,5} 思路及解答 hash统计 第一次遍历统计频率 ...
Java 哪些情况会导致内存泄漏
内存泄漏 是指对象 已经不再被程序使用,但因为某些原因 无法被垃圾回收器回收,长期占用内存,最终可能引发 OOM(OutOfMemoryError)。 ...
Python 将 PDF 表格数据提取至 TXT 或 Excel
在数据处理与办公自动化场景中,PDF 表格因格式稳定被广泛使用,但不可直接编辑的特性,给数据统计、分析和二次加工带来诸多不便。手动复制粘贴不仅效率低下,还容易出现数据错位、遗漏等问题。 本文将分享一种高效的解决方案—基于Python结合Spire系列库,实现 PDF 表格数据的精准提取,并分别导出为 ...
Spring AOP + Guava RateLimiter:我是如何用注解实现优雅限流的?
总的来说,AOP 让限流这类“基础设施”悄无声息地融入了业务脉络,这正是优雅架构的魅力所在——将复杂性收敛于一点,在别处换来 simplicity。
最后,想起一句被反复“魔改”的名言,放在这里格外贴切:“让架构的归架构,让业务的归业务”。
愿各位的代码世界,秩序井然,bug 退散。 ...
数据分析师的“水晶球”:时间序列分析
很多刚入行的小伙伴问我:“我想预测下个月公司的销售额,或者预测一下明天的股价,该学什么?” 我的回答通常只有六个字:时间序列分析。 如果在数据分析的世界里有一种魔法能让你“预知未来”,那一定就是它。 1. 什么是时间序列? 别被名词吓到了。简单来说,时间序列(Time Series)就是按时间顺序排 ...
Java 操作 Markdown(1)--commonmark-java 使用
commonmark-java 是一个用于解析和渲染 Markdown 文本的 Java 库;本文主要介绍其基本使用,文中所使用到的软件版本:Java 17.0.5、commonmark-java 0.25.1。 1、简介 commonmark-java 可以用来解析抽象语法树(AST),访问和操作 ...
分库分表数据源ShardingSphereDataSource的Connection元数据误用问题分析
背景 对于分库分表应用来说,使用org.apache.shardingsphere.driver.jdbc.core.datasource.ShardingSphereDataSource是一个不错的解决方案,你可以通过配置文件编写分库分表规则,从而在编码时透明地使用分表(当然,路由规则的相关字段还 ...
GitFlow
GitFlow是一种成熟的Git分支管理策略,包含五大核心分支:Master(生产代码)、Develop(开发集成)、Feature(功能开发)、Release(版本发布)和Hotfix(紧急修复)。详细介绍了各分支职责、命名规范、工作流程示例、Git回退操作、Stash暂存、Cherry-Pick... ...
使用Java Stream,将集合转换为一对一Map
在日常的开发工作中,我们经常使用到Java Stream,特别是Stream API中提供的Collectors.toList()收集器, 但有些场景下,我们需要将集合转换为Map,这时候就需要使用到Stream API中提供的另一个收集器: Collectors.toMap,它可以将流中的元素映射 ...
jvm~jvm配置与系统配置的关系
一 生产环境问题描述 keycloak是运行在jboss上面,并且部署到了容器里,在k8s上面进行编排,现在遇到gc在某个时刻垃圾回收速度变慢,CPU接近100%,容器导致存活探针失败,容器最后重启 二 问题分析与解决方案 这是一个典型的 JVM GC 问题导致的容器重启场景。让我分析一下你的配置和 ...


