文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

又一款超炫酷的Python动态数据可视化工具!

2024-11-30 01:30

关注

D3blocks作为一款动态交互式数据可视化工具,它不仅继承了现有库们强大的视觉表现力,更以实时更新和用户深度交互为核心特色,有效弥补了市场上的这一空缺。

D3blocks安装

pip install d3blocks

D3blocks使用

D3Blocks目前囊括了一系列创新且功能丰富的动态交互式图表模块。这些模块包括:时间序列图(Timeseries)、和弦图(Chord)、弹性图(Elasticgraph)、桑基图(Sankey)、热力图(Heatmap)等。

1.时间序列图(Timeseries)

下面这段代码展示了如何利用D3Blocks进行时间序列数据的绘制:

# 导入D3Blocks库
from d3blocks import D3Blocks

# 创建D3Blocks对象实例
d3 = D3Blocks()
# 加载示例数据集(此处为气候相关数据)
df = d3.import_example('climate')
# 调用timeseries方法来绘制时间序列图表
d3.timeseries(df, datetime='date', dt_format='%Y-%m-%d %H:%M:%S', fontsize=10, figsize=[850, 500])

执行上述代码后,D3Blocks将会基于给定的数据帧df中的日期时间信息生成一个高度交互且视觉效果出众的时间序列图表。如下图所示。

2.和弦图(Chord)

下面这段代码展示了如何利用D3Blocks进行和弦图的绘制:

from d3blocks import D3Blocks
# 创建D3Blocks对象实例
d3 = D3Blocks()
# 加载内置的数据示例
df = d3.import_example('energy')
# 调用chord方法来绘制和弦图
d3.chord(df)

3.D3graph

D3graph是一个动态可交互的关系网图,可以设置每个节点的颜色,以及大小,甚至可以在关系网上添加箭头。下面这段代码展示了如何利用D3Blocks进行D3graph的绘制:

# 导入D3Blocks库并创建一个实例
from d3blocks import D3Blocks

d3 = D3Blocks()
# 加载内置的'energy'数据集作为示例数据
df = d3.import_example('energy')
# 使用d3graph方法绘制自定义D3图形,并将结果保存为HTML文件 'd3graph.html'
d3.d3graph(df, filepath='d3graph.html')
# 设置图形缩放方式为minmax归一化(默认可能为其他缩放方法)
d3.d3graph(df, scaler='minmax')
# 调整D3图形节点属性设置,先重置颜色为None(不指定颜色)
d3.D3graph.set_node_properties(color=None)
# 设置'Solar'大小为30
d3.D3graph.node_properties['Solar']['size'] = 30
# 设置'Solar'颜色为红色
d3.D3graph.node_properties['Solar']['color'] = '#FF0000'
# 设置节点'Solar'的边颜色为黑色
d3.D3graph.node_properties['Solar']['edge_color'] = '#000000'
# 设置节点'Solar'的边线宽为5
d3.D3graph.node_properties['Solar']['edge_size'] = 5
# 显示已修改节点属性后的D3图形
d3.D3graph.show()
# 设置D3图形中边的属性:设为有向图,并且箭头终点样式为常规箭头
d3.D3graph.set_edge_properties(directed=True, marker_end='arrow')
# 显示应用了新边属性后的D3图形
d3.D3graph.show()
# 查看当前D3图形的所有节点属性设置
node_props = d3.D3graph.node_properties
# 查看当前D3图形的所有边属性设置
edge_props = d3.D3graph.edge_properties
# 最后再次显示D3图形,以确认所有设置是否生效
d3.D3graph.show()

4.Elasticgraph

Elasticgraph类似电子原子核的结构,关联每个数据,且数据可以进行细节参考,双击每个节点,就会展开各个数据。

# 导入D3Blocks库并创建一个实例
from d3blocks import D3Blocks

# 创建D3Blocks对象实例
d3 = D3Blocks()
# 加载内置的'energy'数据集
df = d3.import_example('energy')
# 使用elasticgraph方法绘制弹性图,并将结果保存为HTML文件 'Elasticgraph.html'
d3.elasticgraph(df, filepath='Elasticgraph.html')
# 显示生成的弹性图
d3.Elasticgraph.show() 
# 显示嵌套的D3图形
d3.Elasticgraph.D3graph.show()
# 显示弹性图
d3.Elasticgraph.show()
# 显示嵌套的D3图形
d3.Elasticgraph.D3graph.show()
# 查看并输出当前弹性图中所有节点的属性设置
node_props = d3.Elasticgraph.D3graph.node_properties
# 查看并输出当前弹性图中所有边的属性设置
edge_props = d3.Elasticgraph.D3graph.edge_properties

5.Heatmap

下面这段代码展示了如何利用D3Blocks进行热力图的绘制:

# 导入D3Blocks库并创建一个实例
from d3blocks import D3Blocks
d3 = D3Blocks()
# 加载内置的'stormofswords'数据集
df = d3.import_example('stormofswords')
# 使用heatmap方法绘制热力图
d3.heatmap(df)

图片

来源:数据科学与AI内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯