目录
1.矩形树图介绍
2.代码数据
3.代码及部分说明
4.效果图展示:
矩形树图(Treemap)也叫矩形式树状结构图,它采用多组面积不等的矩形嵌套而成
在一张图中,所有矩形的面积之和代表了总体数据。各个小矩形的面积表示每个子项的占比,矩形面积越大,表示子数据在整体中的占比越大
矩形树图适合展现具有层级关系的数据,能够直观体现同级之间的比较(矩形树图使用不同颜色和大小的长方形来显示数据的层次结构)
矩形树图的好处在于,相比起传统的树形结构图,矩形树图能更有效得利用空间,并且拥有展示占比的功能。矩形树图的缺点在于,当分类占比太小的时候文本会变得很难排布
适合的数据条数: 大于5个分类数据
data = [
{
"name": "大数据技术",
"children": [
{
"name": "大数据技术19级",
"children": [
{"value": 20, "name": "大数据技术19级1班"},
{"value": 40, "name": "大数据技术19级2班"}
],
},
{
"name": "大数据技术20级",
"children": [
{"value": 20, "name": "大数据技术20级1班"},
{"value": 40, "name": "大数据技术20级2班"}
],
},
{
"name": "大数据技术21级",
"children": [
{"value": 30, "name": "大数据技术21级1班"},
{"value": 30, "name": "大数据技术21级2班"},
],
},
],
},
{
"name": "人工智能",
"children": [
{
"name": "人工智能20级",
"children": [
{"value": 20, "name": "人工智能20级1班"},
],
},
{
"name": "人工智能21级",
"children": [
{"value": 40, "name":"人工智能21级1班"},
],
},
],
},
]
rangestart=1,改变1值可以移动颜色范围
Spectral,使用的是Spectral颜色条色系颜色
颜色条
内含有['viridis', 'plasma', 'inferno', 'magma', 'cividis']、['PiYG', 'PRGn', 'BrBG', 'PuOr', 'RdGy', 'RdBu', 'RdYlBu', 'RdYlGn', 'Spectral', 'coolwarm', 'bwr', 'seismic']等很多颜色条
threshold = 15 长度大于threshold的标签转换为一定格式的标签,避免越界,可适当修改其大小
alpha=.9,alpha是透明度,范围在 0-1之间
fontsize设置字体大小
c = (
TreeMap()
.add("演示数据",
data,
# leaf_depth = 1, # 展示第几层结点,深层次的结点被隐藏起来了
label_opts = opts.LabelOpts(formatter = '{b}:\n{c}人',color='white',position="inside"),
levels=[
opts.TreeMapLevelsOpts( # 第一层树形分支的间隙样式设置
treemap_itemstyle_opts=opts.TreeMapItemStyleOpts(
border_color="#555", border_width=4, gap_width=8
)
),
opts.TreeMapLevelsOpts( # 第二层树形分支的间隙样式设置
treemap_itemstyle_opts=opts.TreeMapItemStyleOpts(
border_color_saturation=0.7,border_width=2 , gap_width=6,
),
),
opts.TreeMapLevelsOpts( # 第三层树形分支的间隙样式设置
color_saturation=[0.3,0.5], # 第三层矩形颜色饱和度区间
treemap_itemstyle_opts=opts.TreeMapItemStyleOpts(
border_color_saturation=0.6, gap_width=2,
),
),
],
)
.set_global_opts(title_opts=opts.TitleOpts(title="TreeMap-基本示例"))
)
c.render_notebook()
可以看出大数据技术专业的人最多