算法金 | D3blocks,一个超酷的 Python 库


​大侠幸会,在下全网同名[算法金] 0 基础转 AI 上岸,多个算法赛 Top [日更万日,让更多人享受智能乐趣]

1 选武入道 - 概况速览

库简介:D3Blocks是一个基于d3 javascript (d3js)的图形库,通过只需少量的Python代码就能创建出视觉上吸引人且实用的图表!

github.com/d3blocks/d3blocks

江湖地位:470+ Star

库的特性和优势:

  • 简易性: 以少量Python代码创建视觉上吸引人的图表。
  • 功能丰富: 支持多种图表类型,如D3graph、Elasticgraph、Sankey等。
  • 易用性: 提供详细文档和示例,让用户能够快速上手。
  • 可定制性: 支持各种图表的自定义设置,满足不同需求。
  • 更新及时: 提供Pypi安装和GitHub克隆安装方式,并支持强制更新。

库应用场景:

  • 数据可视化:用于展示数据分析结果,提供直观的数据呈现。
  • 报告制作:用于制作报告、演示文稿等,增强内容的可视化效果。
  • 网站开发:用于构建数据驱动的网站,提供各种图表展示功能。

浅浅的感受一下:

2 初学乍练 - 快速入门

首先,使用pip安装d3blocks

pip install d3blocks 

然后就是通过d3blocks库来创建一个粒子图。具体来说,它初始化了一个 D3Blocks 实例,然后调用 particles 方法来生成粒子图。在这个例子中,粒子图显示的是“武林秘籍”,并且指定了一些绘图参数,比如碰撞值、间距和图像尺寸。

# 导入模块
from d3blocks import D3Blocks
​
# 初始化
d3 = D3Blocks()
​
# 绘制粒子图
d3.particles('武林秘籍', collision=0.05, spacing=10, figsize=[1200, 500])

3 江湖试炼 - 实战应用

能源数据集交互网络

关系数据通常表现为一条记录与另一条或多条记录之间的关联。

图论中有多种形式来存储这种关系,例如邻接矩阵(对称方阵)或incidence矩阵(编码顶点对之间的关系)。

无论矩阵形式如何,绘制关系图有助于更好地理解数据。它可以揭示演化模式,其中节点在代表不同阶段的两个或多个组中重复出现。在这种情况下,弦图或桑基图是理想的关系可视化方式。

另一种情况是源到终点的模式,起始于某一点,可能经过中间步骤最终结束。这时网络图就能发挥作用。

而当交互数量很大,网络图等形式就会变成杂乱无章的"毛球"时,热力图就派上了用场。

对于这种图表形式,输入数据保持一致,都需要包含源(source)、目标(target)和权重(weight)三列的数据框。

from d3blocks import D3Blocks
​
# 初始化 D3Blocks 对象
d3 = D3Blocks()
​
# 导入示例数据集 'energy'
df = d3.import_example('energy')
# 显示输入数据
print(df)
​
# 初始化网络图,但不显示图形
d3.d3graph(df, showfig=False)
​
# 设置节点颜色为根据聚类结果着色
d3.D3graph.set_node_properties(color='cluster')
​
# 调整节点 'Thermal_generation' 的属性
d3.D3graph.node_properties['Thermal_generation']['size'] = 20
d3.D3graph.node_properties['Thermal_generation']['edge_color'] = '#000fff'  # 设置节点边缘颜色为蓝色
d3.D3graph.node_properties['Thermal_generation']['edge_size'] = 3  # 设置节点边缘大小
​
# 调整边 'Solar' 到 'Solar_Thermal' 的属性
d3.D3graph.edge_properties['Solar', 'Solar_Thermal']['color'] = '#000fff'
d3.D3graph.edge_properties['Solar', 'Solar_Thermal']['weight_scaled'] = 10
​
# 显示网络图
d3.D3graph.show()

注释:

  • 代码首先导入 D3Blocks 库和示例数据集 ‘energy’。然后初始化网络图对象,设置节点颜色为根据聚类结果着色。
  • 接下来,它调整了特定节点 ‘Thermal_generation’ 的大小、边缘颜色和边缘大小,以及边 ‘Solar’ 到 ‘Solar_Thermal’ 的颜色和权重比例。
  • 最后,显示了配置后的网络图。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

添加图片注释,不超过 140 字(可选)

全网同名,日更万日,让更多人享受智能乐趣

烦请大侠多多 分享、在看、点赞,助力算法金又猛又持久、很黄很 BL 的日更下去;我们一起,让更多人享受智能乐趣

同时邀请大侠 关注、星标 算法金,围观日更万日,助你功力大增、笑傲江湖

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/699740.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二分查找算法:穿越算法迷宫的指南

✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 目录 前言 一. 二分查找算法介绍 二 二分查找的题目解析 2.1 二分查找 2.2 在排序数组中查找元素的第一个位置和最后一个位置 2.3 搜索插入位置 2.4 x的平方根 2.5 山峰数组峰顶的索引 2.6 寻找峰值 2.7 寻找旋转数…

TensorFlow图像识别项目

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 目录 今天我们将讨论如何部署Flask项…

【鸿蒙开发】HarmonyOS开发 URL动态路由设计

前言 2024 年是原生鸿蒙的关键一年,我们要加快推进各类鸿蒙原生应用的开发,集中打赢技术底座和三方生态两大最艰巨的战斗。余承东强调,要构建强大的鸿蒙生态,拉动中国电子工业崛起,开启终端未来大发展的新十年 。 去年…

c# 操作Microsoft Access数据库

数据库结构为: public static string connting "数据库路径:如:D:\\xxx.mdb";//插入public bool InsertToFile(string casenumber, int lastrowid, int pagecount){bool result true;try{string connString $"ProviderMicr…

零基础非科班也能掌握的C语言知识20 文件操作

文件操作 1.文件相关概念2.流和标准流2.1流2.2标准流 3.文件指针4.文件的打开关闭5.文件的顺序读写6.文件的随机读写6.1 fseek6.2 ftell6.3 rewind 7.⽂件读取结束的判定7.1 feof 8.文件缓冲区 1.文件相关概念 2.流和标准流 2.1流 我们程序的数据需要输出到各种外部设备&…

分层解耦

三层架构 controller:控制层,接收前端发送的请求,对请求进行处理,并响应数据, service:业务逻辑层,处理具体的业务逻辑。 dao:数据访问层(Data Access Object)(持久层),负责数据访问操作,包括数…

Linux文件权限信息和Linux文件与文件夹的管理

目录 前言一、系统环境二、Linux文件权限信息2.1 查看Linux文件权限信息2.2 修改Linux文件权限信息2.2.1 chmod命令2.2.2 chown命令 三、Linux文件与目录的管理3.1 查看文件或文件夹3.1.1 查看文件内容3.1.2 查看文件夹内容 3.2 新增文件或文件夹3.2.1 新增文件3.2.2 新增文件夹…

Node.js版本管理工具-NVM

在开发 Node.js 项目时,经常会遇到需要切换不同版本的 Node.js 的情况。为了方便管理和切换各个版本,我们可以使用一些 Node.js 版本管理工具。 Node Version Manager:简称NVM,最流行的 Node.js 版本管理工具之一。它允许我们在同…

C++---模板进阶(非类型模板参数,模板的特化,模板分离编译)

我们都学习和使用过模板,而这篇文章我们来将一些更深入的知识。在此之前,我们在使用C编程时可以看到模板是随处可见的,它能支持泛型编程。模板包括函数模板和类模板,我们有的人可能会说是模板函数和模板类,但严格讲这样…

【话题】评价GPT-4o:从革命性技术到未来挑战

大家好,我是全栈小5,欢迎阅读小5的系列文章,这是《话题》系列文章 目录 引言技术原理应用领域实际案例优势挑战局限性未来展望文章推荐 引言 在人工智能领域,自然语言处理(NLP)技术的进步一直是推动技术革…

Allegro蛇形等长

Allegro蛇形等长 一、蛇形等长规则创建方法 一般有点对点,串组两种形式 点对点一般直接在规则中建立等长组 串组可以用模型等长和pin to pin等长 下面提供pin to pin的方法,个人感觉最好用 二、创建规则 打开规则管理器,展开Electrical–…

Studio One安装教程+软件安装包下载

Studio One6全新版本上线 记录、生产、混合、掌握和执行所有操作。从工作室到舞台,Studio One6以易用为核心,是您的创意合作伙伴。 当你准备好登上舞台时,Studio One就在那里。只有Studio One从最初的灵感到完整的制作,最终混音…

【STM32】基于I2C协议的OLED显示(利用U82G库)

【STM32】基于I2C协议的OLED显示(利用U82G库) 文章目录 【STM32】基于I2C协议的OLED显示(利用U82G库)一、实验背景二、U8g2介绍(一)获取(二)简介 三、实践(一)CubexMX配置(二)U8g2配…

官方正版 | Mailbird - 2024 年最佳电子邮件客户端

Mailbird:个性化的电子邮件客户端 Mailbird 是一款专为 Windows 用户设计的桌面电子邮件客户端,以其用户友好的界面和强大的功能获得了广泛好评。以下是 Mailbird 的主要特点: 个性化背景:Mailbird 提供了可定制的背景选项&#…

【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox

博客主页:Duck Bro 博客主页系列专栏:Qt 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Qt窗口 | 标准对话框 | 消息对话框QMessageBox 文章编号:Q…

linux pxe和无人值守

一 PXE和无人值守 pxe c/s模式 允许客户端通过网络从远程服务器(服务端)下载引导镜像 加载安装文件 实现自动化安装操作系统 无人值守 就是安装选项不需要认为干预 可以自动化实现 pxe的优点 1 规模化 同时装配多台服务器 20多 30台 2 自动化 …

Rust学习06:使用CSDN的AI工具“C知道”分析代码错误

朋友们,我最近真的是在绝望的边缘了! Rust咋这么蓝涅! 资料咋这们少涅! 记得学Python的时候,基本上你遇到的所有问题都可以在书上或者网上找到答案,中文世界找不到那么在英文世界一定能找到答案。 我猜&…

Redis】Redis主从复制(二)————主从结构/流程

目录 回顾slaveof 命令断开主从复制关系切换主从复制关系只读网络延迟问题应对措施补充 主从结构一主一从结构问题改进 一主多从结构树形主从主从切换结构 主从复制流程简单来记关于数据同步两个参数replicationidoffset. psync 运行流程全量复制和部分复制全量复制流程&#x…

使用使用rundll32 调用指定dll的方法

使用使用rundll32 调用指定dll的方法 //顾名思义,"执行32位的DLL文件"。它的作用是执行DLL文件中的内部函数,这样在进程当中, 只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐…

自定义组件——ABManager(AB包管理器)

需求描述 在Unity3D引擎中,AB包作为常用的游戏资源存储格式之一。而对于资源管理我们就不得不谈到集中管理的优势了,通过统一的接口加载和卸载AB包及其中的资源将进一步提升我们的编程效率。本文将围绕这个需求进行尝试。 功能描述 1. AB包的加载包括同…