Token导航 LogoToken导航TokenDH.com
前端设计只读github未标认证来源可访问许可证需确认审计通过

syncfusion-flutter-treemapsyncfusion Flutter treemap 命令行

Agent Skill

syncfusion-flutter-treemap 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

612

周安装

25

GitHub Stars

1

下载量

196
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:syncfusion-flutter-treemap(syncfusion Flutter treemap 命令行)
来源仓库:https://github.com/syncfusion/flutter-ui-components-skills
仓库路径:skills/syncfusion-flutter-treemap
安装命令:
npx skills add https://github.com/syncfusion/flutter-ui-components-skills --skill syncfusion-flutter-treemap
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/syncfusion/flutter-ui-components-skills --skill syncfusion-flutter-treemap

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态或协作事项进行整理。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装使用。
  • 安装前建议确认权限范围、维护状态及是否触发联网或文件读写操作。
  • syncfusion-flutter-treemap 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Implementing Flutter TreeMaps

This skill guides you through implementing the Syncfusion Flutter TreeMap (SfTreemap) widget - a powerful visualization component for displaying hierarchical and proportional data using nested rectangles. TreeMaps excel at showing complex data relationships, making them ideal for dashboards, analytics, and data exploration interfaces.

When to Use This Skill

Use this skill when the user needs to:

  • Visualize hierarchical or nested data structures in Flutter
  • Display proportional data using nested rectangles
  • Create interactive treemap visualizations with drilldown
  • Show categorical data with color-coded tiles
  • Represent large datasets in a space-efficient manner
  • Build dashboards with hierarchical data displays
  • Implement data exploration interfaces with selection and tooltips
  • Create heat maps based on quantitative values

Component Overview

The Syncfusion Flutter TreeMap (SfTreemap) is a powerful data visualization widget that displays hierarchical data using nested rectangles. Each rectangle's size is proportional to a quantitative value, making it easy to compare values across different categories and levels.

TreeMap is ideal for:

  • File system visualizations
  • Budget breakdowns by category
  • Market share analysis
  • Organization hierarchies with metrics
  • Resource allocation displays
  • Portfolio compositions
  • Sales data by region/product/category

Key Capabilities

  • Multiple Layout Algorithms: Squarified (default), Slice, Dice
  • Data Support: Both flat and hierarchical structures
  • Customizable Labels: Use any Flutter widget as labels
  • Interactive Features: Selection, tooltips, tap events
  • Color Mapping: Value-based and range-based coloring
  • Legend Support: Bar and gradient legends
  • Drilldown Navigation: Navigate through hierarchical levels
  • Accessibility: RTL support, semantic labels
  • Theming: Full customization of colors and styles

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Package installation and setup
  • Adding dependency to pubspec.yaml
  • Importing the treemap package
  • Creating your first treemap
  • Basic data source structure
  • Essential properties: dataCount, weightValueMapper, levels
  • Minimal working example

Layout Configuration

📄 Read: references/layouts.md

  • Understanding layout algorithms
  • Squarified layout (default, balanced rectangles)
  • Slice layout (horizontal divisions)
  • Dice layout (vertical divisions)
  • When to use each layout type
  • Performance considerations
  • Switching between layouts

Data Structure and Hierarchy

📄 Read: references/hierarchical-data.md

  • Flat vs hierarchical data structures
  • Configuring TreemapLevel for grouping
  • Using groupMapper to organize data
  • Using weightValueMapper to size tiles
  • Creating multi-level hierarchies
  • dataCount property usage
  • Building complex nested data

Customization: Labels and Styling

📄 Read: references/labels-customization.md

  • Adding labels with labelBuilder
  • TreemapTile properties and data access
  • Custom label widgets
  • Label positioning and padding
  • Text styling and formatting
  • Conditional label display
  • Responsive label sizing

Customization: Colors and Theming

📄 Read: references/colors-theming.md

  • Color mapping overview
  • Value-based color mapping
  • Range-based color mapping
  • Gradient support
  • Theme integration
  • Custom color palettes
  • Per-tile color customization

Interactive Features: Tooltip and Selection

📄 Read: references/tooltip-selection.md

  • Creating tooltips with tooltipBuilder
  • Custom tooltip widgets and styling
  • Enabling tile selection
  • Handling onSelectionChanged events
  • Selected tile highlighting
  • Multi-select support
  • Touch and hover interactions

Legend

📄 Read: references/legend.md

  • Adding TreemapLegend widget
  • Bar legends vs gradient legends
  • Legend positioning (top, bottom, left, right)
  • Icon and text customization
  • Legend item styling
  • Integration with color mappers

Drilldown Navigation

📄 Read: references/drilldown.md

  • Implementing drilldown behavior
  • Using onTap callback
  • Navigating hierarchical data
  • Managing drilldown state
  • Building breadcrumb navigation
  • Back/up navigation
  • Preserving user context

Advanced Features

📄 Read: references/advanced-features.md

  • Custom tile widgets with itemBuilder
  • Right-to-left (RTL) support
  • Accessibility features
  • Keyboard navigation
  • Performance optimization techniques
  • Responsive design patterns
  • Integration with state management

Quick Start Example

Here's a minimal example to get you started:

import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_treemap/treemap.dart';

class BasicTreemapExample extends StatefulWidget {
  @override
  _BasicTreemapExampleState createState() => _BasicTreemapExampleState();
}

class _BasicTreemapExampleState extends State<BasicTreemapExample> {
  late List<SalesData> _salesData;

  @override
  void initState() {
    _salesData = [
      SalesData(region: 'North America', sales: 8500),
      SalesData(region: 'Europe', sales: 6200),
      SalesData(region: 'Asia', sales: 9800),
      SalesData(region: 'South America', sales: 3400),
      SalesData(region: 'Africa', sales: 2100),
    ];
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('Sales by Region')),
      body: Center(
        child: Container(
          height: 400,
          width: 400,
          padding: EdgeInsets.all(16),
          child: SfTreemap(
            dataCount: _salesData.length,
            weightValueMapper: (int index) {
              return _salesData[index].sales;
            },
            levels: [
              TreemapLevel(
                groupMapper: (int index) {
                  return _salesData[index].region;
                },
                labelBuilder: (BuildContext context, TreemapTile tile) {
                  return Padding(
                    padding: EdgeInsets.all(4),
                    child: Text(
                      tile.group,
                      style: TextStyle(color: Colors.black),
                    ),
                  );
                },
              ),
            ],
          ),
        ),
      ),
    );
  }
}

class SalesData {
  SalesData({required this.region, required this.sales});

  final String region;
  final double sales;
}

Common Patterns

Pattern 1: Hierarchical Data with Drilldown

// Multi-level data structure
class SalesData {
  SalesData({
    required this.region,
    required this.country,
    required this.sales,
  });

  final String region;
  final String country;
  final double sales;
}

// TreeMap with two levels
SfTreemap(
  dataCount: _salesData.length,
  weightValueMapper: (int index) => _salesData[index].sales,
  levels: [
    TreemapLevel(
      groupMapper: (int index) => _salesData[index].region,
    ),
    TreemapLevel(
      groupMapper: (int index) => _salesData[index].country,
    ),
  ],
)

Pattern 2: Color-Coded by Value

SfTreemap(
  dataCount: _data.length,
  weightValueMapper: (int index) => _data[index].value,
  colorMappers: [
    TreemapColorMapper.range(
      from: 0,
      to: 25,
      color: Colors.green,
      name: 'Low',
    ),
    TreemapColorMapper.range(
      from: 25,
      to: 50,
      color: Colors.yellow,
      name: 'Medium',
    ),
    TreemapColorMapper.range(
      from: 50,
      to: 100,
      color: Colors.red,
      name: 'High',
    ),
  ],
  legend: TreemapLegend.bar(),
  levels: [
    TreemapLevel(
      groupMapper: (int index) => _data[index].category,
    ),
  ],
)

Pattern 3: Interactive with Selection

SfTreemap(
  dataCount: _data.length,
  weightValueMapper: (int index) => _data[index].value,
  onSelectionChanged: (TreemapTile tile) {
    setState(() {
      // Add selection changed functionalities here
    });
  },
  levels: [
    TreemapLevel(
      groupMapper: (int index) => _data[index].category,
      color: Colors.blue[200],
      tooltipBuilder: (BuildContext context, TreemapTile tile) {
        return Container(
          padding: EdgeInsets.all(8),
          decoration: BoxDecoration(
            color: Colors.black87,
            borderRadius: BorderRadius.circular(4),
          ),
          child: Text(
            '${tile.group}: ${tile.weight}',
            style: TextStyle(color: Colors.white),
          ),
        );
      },
    ),
  ],
)

Key Properties Reference

Essential Properties

PropertyTypeDescription
dataCountintNumber of data points in the source
weightValueMapperIndexedDoubleValueMapperCallback returning numeric value for tile size
levelsList<TreemapLevel>Hierarchy levels configuration

TreemapLevel Properties

PropertyTypeDescription
groupMapperIndexedStringValueMapperGroups data for this level
labelBuilderTreemapLabelBuilder?Custom label widget builder
tooltipBuilderTreemapTooltipBuilder?Custom tooltip widget builder
colorColor?Default tile color for this level
borderRoundedRectangleBorder?Tile border styling
paddingEdgeInsetsGeometry?Padding around tiles

Optional Configuration

Note: The layout algorithm is determined by the constructor used, not by a property. Use SfTreemap() for squarified (default), SfTreemap.slice() for slice, or SfTreemap.dice() for dice.
PropertyTypeDescription
colorMappersList<TreemapColorMapper>?Value/range-based coloring
legendTreemapLegend?Legend widget configuration
onSelectionChangedValueChanged<TreemapTile>?Selection event handler
layoutDirectionTreemapLayoutDirectionLayouts the tiles in top-left, top-right, bottom-left and bottom-right directions; default topLeft
sortAscendingboolSort tiles by weight (slice/dice only)

Common Use Cases

Use Case 1: Budget Dashboard

Display organizational budget breakdown by department and sub-categories with color coding for spending levels.

When to use: Multi-level budget tracking, resource allocation

Use Case 2: Sales Analysis

Visualize sales data across regions, countries, and products with interactive drilldown.

When to use: Regional sales comparison, market analysis, performance dashboards

Use Case 3: File System Visualization

Show disk space usage by folders and files with proportional sizing.

When to use: Storage analysis, file management tools, disk cleanup utilities

Use Case 4: Market Share Analysis

Display market share data for different companies, products, or categories.

When to use: Competitive analysis, portfolio composition, market research

Use Case 5: Organization Hierarchy

Show organizational structure with metrics like headcount or budget per team.

When to use: HR dashboards, resource planning, org chart visualizations

Troubleshooting Quick Reference

No tiles visible?

  • Check that dataCount matches your data length
  • Verify weightValueMapper returns positive numbers
  • Ensure groupMapper returns non-null strings

Labels not showing?

  • Add labelBuilder to TreemapLevel
  • Check label widget size fits within tile
  • Verify text color contrasts with tile background

Colors not applying?

  • Ensure colorMappers values match your data range
  • Check that color mapper has the correct type (value vs range)
  • Verify legend is configured if using color mappers

Selection not working?

  • Add onSelectionChanged callback
  • Ensure you're calling setState to rebuild
  • Check that tiles are large enough to tap

For detailed troubleshooting and solutions, refer to the specific reference documentation.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.67%
按下载量换算66

Claude

31.32%
按下载量换算61

Cursor

17.27%
按下载量换算34

Gemini CLI

9.22%
按下载量换算18

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills