mcpField
D
developing-in-lightdash

developing-in-lightdash

github.com/lightdash数据与数据库6.2k470 次安装今天更新
代码仓库

关于 developing-in-lightdash

Developing in Lightdash 是面向 CLI 用户和写回沙箱的技能,用于构建和部署 Lightdash 分析项目。它涵盖语义层、图表与仪表板,以及以代码方式管理内容的 Lightdash CLI 工作流。

主要功能

  1. 01定义指标、维度和关联
  2. 02创建与编辑图表和仪表板
  3. 03通过 CLI 部署和预览项目
  4. 04下载、上传及校验内容
  5. 05管理数据应用和自定义图表类型

适用场景

  1. 01维护 dbt 或 Lightdash YAML 项目
  2. 02将图表和仪表板作为代码管理
  3. 03检查仓库元数据并构建语义层
  4. 04部署分析项目并预览变更

MCP 相关

README 提及可通过 Lightdash MCP server 创建或编辑图表和仪表板。此技能为这些 Lightdash 开发任务提供指导。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lightdash/lightdash --skill developing-in-lightdash

安装后在 Claude Code 中输入/developing-in-lightdash确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

resources/
big-number-chart-reference.md
cartesian-chart-reference.md
cli-reference.md
content-as-code-reference.md
creating-from-warehouse-catalog.md
custom-viz-reference.md
dashboard-best-practices.md
dashboard-reference.md
data-app-themes-reference.md
dimensions-reference.md
funnel-chart-reference.md
gauge-chart-reference.md
joins-reference.md
map-chart-reference.md
metrics-reference.md
period-over-period-reference.md
pie-chart-reference.md
sankey-chart-reference.md
sql-chart-reference.md
table-chart-reference.md
tables-reference.md
treemap-chart-reference.md
user-attributes-reference.md
workflows-reference.md

详细介绍

在 Lightdash 中开发

适用于使用 YAML 和 dbt 文件的 CLI 用户和 writeback 沙盒。

构建并部署 Lightdash 分析项目。本技能涵盖语义层(指标、维度、联接)和内容(图表、仪表板)。

适用场景

  • 使用 Lightdash YAML 文件(图表、仪表板、以代码形式管理的模型)
  • 使用 lightdash CLI(deploy、upload、download、preview、lint、warehouse-catalog、sql)
  • 在 dbt 或纯 Lightdash 项目中定义指标、维度、联接或表
  • 以代码形式创建或编辑图表和仪表板
  • 下载、上传或在本地开发数据应用(企业版)
  • 创建、下载、编辑或上传在 Chart Studio 中构建的自定义图表类型(企业版)
  • 创建、编辑、迁移、下载或上传组织级数据应用主题

**不适用场景:**开发 Lightdash 应用本身(请使用代码库中的 CLAUDE.md)、不涉及 Lightdash 元数据的一般 dbt 工作,或与 Lightdash 模型无关的原始 SQL。

可以执行的操作

任务命令参考
根据数据仓库元数据创建纯 Lightdash 项目使用 Lightdash 或已通过身份验证的数据仓库 CLI 检查目录元数据并汇总配置文件根据数据仓库目录创建
发现数据仓库中的表和字段lightdash warehouse-catalog --jsonCLI 参考
探索数据仓库中的值使用 lightdash sql 执行原始 sql,并读取 .csv 结果CLI 参考
定义指标和维度编辑 dbt YAML 或 Lightdash YAML指标、维度
创建或编辑图表使用 UI、Lightdash AI Agent、MCP,或通过 lightdash download/upload 使用 YAML内容工作流、图表类型
添加周期对比向图表 YAML 添加 PoP 附加指标周期对比
创建或编辑仪表板使用 UI、Lightdash AI Agent、MCP,或通过 lightdash download/upload 使用 YAML内容工作流、仪表板参考
以代码形式管理项目和组织资源中的内容lightdash download、lightdash upload以代码形式管理内容
以代码形式管理数据应用(企业版)使用 lightdash download --apps <ref>(单个应用)或 --include-apps(全部),编辑捆绑包,再使用 lightdash upload --apps <ref>;通过 lightdash apps create/preview/validate 进行本地开发数据应用、以代码形式管理内容
构建或编辑自定义图表类型(企业版)使用 lightdash apps create "<name>" --chart-type 或 lightdash download --chart-types <ref>,编辑 chart-types/<slug>/src/,再使用 lightdash upload --chart-types <ref>自定义图表类型
以代码形式管理组织级数据应用主题使用 lightdash download --organization,编辑 themes/<slug>/,再使用 lightdash upload --organization数据应用主题
管理数据应用的外部连接(企业版)使用 lightdash download --include-external-connections,编辑 YAML,再使用 lightdash upload以代码形式管理内容
检查 YAML 文件lightdash lintCLI 参考
设置数据仓库连接根据 profiles.yml 使用 lightdash set-warehouseCLI 参考
部署更改lightdash deploy(语义层)、lightdash upload(内容)CLI 参考
测试更改lightdash preview工作流

常见错误

错误后果预防方法
猜测筛选值大小写不匹配('Payment' 与 'payment')会导致图表悄无声息地返回空数据始终运行 lightdash sql "SELECT DISTINCT column FROM table LIMIT 50" -o values.csv,并使用完全匹配的值
重命名图表后未更新仪表板图块仪表板图块仍显示旧标题——title 和 chartName 是相互独立的覆盖项,不会自动更新下载仪表板,找到 chartSlug 匹配的图块,并更新 title 和 chartName 使其保持一致(参见检查清单)
在 metricQuery 中包含未使用的维度出现“结果可能不正确”警告——额外的维度会改变 SQL 分组并产生错误数字metricQuery.dimensions 中的每个维度都必须出现在图表配置中。对于笛卡尔图表:layout.xField、layout.yField 或 pivotConfig.columns
YAML 键未排序lightdash upload 会发出“YAML 键未排序”警告,并导致差异内容冗杂始终在每一层嵌套中按字母顺序排列键——CLI 会使用 sortKeys: true 写入
部署到错误的项目覆盖生产环境内容部署前始终运行 lightdash config get-project
将内容下载到 dbt 项目中并提交仓库会增加无人维护的仪表板、图表或数据应用文件;一旦有人在 UI 中编辑内容,这些文件就会过时下载到临时目录,上传后再删除。仅在用户提出要求或仓库已跟踪这些内容时才提交(参见内容工作流)
缺少 contentType 字段无法确定内容类型,除非依赖目录结构始终在顶层包含 contentType: chart、contentType: dashboard 或 contentType: sql_chart
在 --apps <ref> 选择中添加 --include-apps--include-apps 始终会请求项目中的所有应用(上限为 50 个),因此命令会下载所有应用以及该 ref,而不只是单个应用单独使用 --apps <ref> 只会下载或上传该应用(可按 slug、应用 URL 或 UUID 指定)。仅在需要所有应用时使用 --include-apps
编辑数据应用前未阅读其随附技能应用代码会违反仅通过 SDK 访问数据和依赖项边界的要求(直接使用 fetch、pnpm add、随应用打包的库),导致上传被拒绝或应用部署后无法运行每个应用包都附带 developing-data-apps-locally 和 lightdash-data-app 技能——编辑应用文件夹中的文件前请先阅读(参见数据应用)
将可复用图表构建为 Vega-Lite custom 图表可视化内容只存在于一个已保存的图表中,无法复用,也无法从数据探索器的图表类型选择器中选取要创建新的可复用可视化,请构建自定义图表类型(参见自定义图表类型)。仅在处理现有的 chartConfig.type: custom 图表,或项目没有自定义图表类型(企业版)时使用 Vega-Lite
编辑图表类型前未阅读其随附技能组件会自行查询或获取数据,或者其 vizSchema 与 src/ 中读取的内容不一致,导致图表类型故障或无法显示在图表类型选择器中每个图表类型文件夹都附带 AGENTS.md 以及 reusable-visualization 和 developing-chart-types-locally 技能——编辑 chart-types/<slug>/ 中的文件前请先全部阅读
编造仅适用于主题的 CLI 命令,或把缺少文件夹视为已删除命令不存在,或者看似已删除的远程主题会在下次下载时重新出现使用组织级下载和上传操作;更改 themes/ 前请阅读数据应用主题

开始之前

每次执行 lightdash download 或 lightdash upload 时,都必须遵循内容工作流:文件应放在临时目录中,而不是用户的代码仓库中;除非用户要求,否则不要提交这些文件。

当任务需要使用 lightdash download 或 lightdash upload 时,尤其是涉及批量编辑、空间和访问权限、计划内容、AI Agent、数据应用、自定义图表类型、组织主题、外部连接、用户、群组或自定义角色时,请先阅读并遵循内容即代码。项目内容和组织内容需要使用不同的命令,而默认下载并非完整快照。

对于任何创建、编辑、迁移、下载、上传或测试组织数据应用主题的任务,在操作 themes/ 之前,务必阅读并遵循数据应用主题。主题包是严格的多文件资源,组织上传没有仅上传主题的模式,而且 lightdash lint 不会验证它们。

检查目标项目

始终确认要部署到哪个项目。 部署到错误的项目可能会覆盖生产内容。

lightdash config get-project        # Show current project
lightdash config list-projects      # List available projects
lightdash config set-project --name "My Project"  # Switch project
检测项目类型

不同项目类型的 YAML 语法差异很大。

类型检测方式主要区别
dbt 项目包含 dbt_project.yml元数据嵌套在 meta: 下
dbt Fusion / dbt 1.10+包含 dbt_project.yml,使用 dbt Fusion 或 dbt >= 1.10元数据嵌套在 config: meta: 下
纯 Lightdash包含 lightdash.config.yml,不使用 dbt顶层属性
ls dbt_project.yml 2>/dev/null && echo "dbt project" || echo "Not dbt"
ls lightdash.config.yml 2>/dev/null && echo "Pure Lightdash" || echo "Not pure Lightdash"

dbt Fusion / dbt 1.10+: Lightdash 元数据必须嵌套在 config: meta: 下,而不是 meta: 下。属性完全相同,只有嵌套位置不同。示例:

models:
  - name: orders
    config:
      meta:
        metrics:
          total_revenue:
            type: sum
            sql: "${TABLE}.amount"
语法对比

dbt YAML(元数据位于 meta: 下):

models:
  - name: orders
    meta:
      metrics:
        total_revenue:
          type: sum
          sql: "${TABLE}.amount"
    columns:
      - name: status
        meta:
          dimension:
            type: string

纯 Lightdash YAML(位于顶层):

type: model
name: orders
sql_from: 'DB.SCHEMA.ORDERS'

metrics:
  total_revenue:
    type: sum
    sql: ${TABLE}.amount

dimensions:
  - name: status
    sql: ${TABLE}.STATUS
    type: string

设置数据仓库连接

如果项目需要使用不同的数据仓库连接(例如,从 Postgres 切换到 BigQuery),请从 profiles.yml 更新连接:

lightdash set-warehouse --project-dir ./dbt --profiles-dir ./profiles --assume-yes

此命令会从 profiles.yml 读取凭据,更新当前所选项目的数据仓库连接,并触发重新编译。请在运行 lightdash deploy 之前执行此命令。

要指定某个项目:

lightdash set-warehouse --project-dir ./dbt --profiles-dir ./profiles --project <uuid> --assume-yes

核心工作流

使用筛选值前先验证

重要: 绝不要猜测筛选值。大小写不匹配(例如,'Payment' 与 'payment')会导致图表悄无声息地返回空数据。

默认情况下,筛选区分大小写。case_sensitive 键可以按以下优先级覆盖此设置:

  • 维度元数据
  • 模型/探索元数据
  • lightdash.config.yml defaults.case_sensitive

编写任何字符串筛选条件之前,请先从数据仓库查询实际值:

lightdash sql "SELECT DISTINCT category FROM payments LIMIT 50" -o category_values.csv

读取 CSV,并在筛选器 YAML 中使用完全一致的值。此要求适用于图表和仪表板中所有值为字符串的 equals/notEquals 筛选条件。

编辑指标和维度
  1. 找到模型 YAML 文件(dbt:models/*.yml;纯 Lightdash:lightdash/models/*.yml)
  2. 编辑指标/维度,并使用适用于项目类型的语法
  3. 验证:lightdash lint(纯 Lightdash)或 dbt compile(dbt 项目)
  4. 部署:lightdash deploy

配置选项请参阅指标参考和维度参考。

根据数据仓库目录创建纯 Lightdash 项目

当准备好的项目没有可用的 dbt 项目,而任务是根据数据仓库元数据搭建语义层时,在检查数据或编写 YAML 之前,务必先阅读并遵循根据数据仓库目录创建。无论数据仓库访问权限来自所选的 Lightdash 项目,还是已通过身份验证的数据仓库 CLI(例如 Snowflake CLI 或 bq),都适用此要求。若现有 dbt 语义层可以扩展,则不要使用此工作流。

内容工作流

图表、仪表板、数据应用、自定义图表类型及其他内容都遵循这一套流程。以下各节仅补充特定资源相关的内容。

创建内容。 可以在 Lightdash UI 中、通过 Lightdash AI Agent、通过 Lightdash MCP 服务,或使用 CLI 将内容创建为 YAML。以上方式都同样有效;请遵循用户的偏好。

Lightdash 是事实来源。 下载的文件只是临时工作副本,不应提交。若要将内容作为文件编辑,或以 YAML 创建内容:

  1. 确认目标:lightdash config get-project
  2. 下载到用户仓库之外的临时目录,绝不要下载到 dbt 项目中:
    LD_DIR="$(mktemp -d)/lightdash"
    lightdash download --dashboards executive-summary --path "$LD_DIR"   # or --charts <slug>, --apps <ref>, ...
    
    若要创建内容,则跳过下载步骤,并在 $LD_DIR 中编写新的 YAML。
  3. 在 $LD_DIR 中编辑文件,并按照下面的检查清单操作
  4. 检查:lightdash lint --path "$LD_DIR"
  5. 使用相同的选择器上传:lightdash upload --dashboards executive-summary --path "$LD_DIR"
  6. 删除$LD_DIR。不要将这些文件复制到仓库中,不要对它们执行 git add,也不要提交。

对于批量或跨范围的更改(空间和访问权限、用户、组、角色、计划内容、AI Agent),请改为遵循代码化内容中的 Agent 安全工作流。

哪些内容应纳入 git。 仅当用户提出要求,或仓库已经在跟踪内容时(例如,git ls-files lightdash/ 返回内容文件),才应纳入 git。这适用于受版本控制的模板、通过 CI/CD 部署内容,以及要求严格变更管理和代码审查的场景。请参阅使用 Agent 编辑仪表板。这仅适用于内容:dbt 模型、指标、维度及其他语义层 YAML 确实应保存在仓库中,并随 lightdash deploy 一同部署。

图表和仪表板检查清单
  • 筛选值:如果添加或更改了字符串筛选器,请先查询真实值(参见使用前验证筛选值)。
  • 仪表板图块标题:saved_chart 图块的 title 和 chartName 是相互独立的覆盖值;图表重命名时,它们不会自动更新。如果更改了图表名称或用途,请下载所有包含 chartSlug 匹配该图表的图块的仪表板,同时更新这两个属性,并重新上传这些仪表板:
    tiles:
      - type: saved_chart
        properties:
          chartSlug: total-revenue-kpi
          title: "Gross Profit"        # ← Update this when chart name/purpose changes
          chartName: "Gross Profit"    # ← Update this too
    
  • 图表配置:请参阅图表类型和仪表板参考。
使用数据应用(企业版)

数据应用是位于 apps/<app-folder>/ 下的多文件 React bundle,并带有 lightdash-app.yml 清单文件,而不是单个 YAML 文件。完整的标志语义和清单详情请参阅:内容即代码。

数据应用遵循内容工作流:在临时目录中操作,除非用户要求,否则不要提交 bundle。以下命令使用的是数据应用专用标志。

下载一个数据应用——单独使用 --apps <ref> 即为完整命令(ref = slug、应用 URL 或 UUID;也能找到尚未添加到任何空间的数据应用):

lightdash download --apps revenue-explorer --path "$LD_DIR"

切勿添加 --include-apps 来限定下载范围——该标志始终会请求项目中的所有数据应用(参阅常见错误)。

下载所有数据应用:lightdash download --include-apps(上限为 50;使用 --apps-limit <n> 提高上限)。添加 --apps-only 可跳过图表、仪表板和空间。

上传:

lightdash upload --apps revenue-explorer --path "$LD_DIR"   # one app (slug = folder name, URL, or UUID)
lightdash upload --include-apps --path "$LD_DIR"            # every app folder on disk
  • --app-space <spaceRef> — 为此次上传新建的数据应用指定空间(slug 或 UUID);现有数据应用保留其所在空间。
  • --create-new — 新建数据应用(使用新的 slug),而不是更新 lightdash-app.yml 中引用的数据应用。
  • --allow-custom-dependencies — 对于声明了自定义 npm 依赖的数据应用,非交互式上传时必须使用此标志。

在本地开发,使用 lightdash apps 子命令组:

lightdash apps create "Revenue Explorer" --path "$LD_DIR"   # scaffold a new app under $LD_DIR/apps/
lightdash apps preview                     # run the app locally against your real Lightdash instance, authenticated as you
lightdash apps validate                    # check source, manifest, dependencies, and semantic-layer references

每个新建或下载的数据应用 bundle 都会在其文件夹中附带专属技能:

  • developing-data-apps-locally — 编辑 → 验证 → 上传的循环、本地预览、仅通过 SDK 访问数据以及依赖边界
  • lightdash-data-app — 数据应用源代码的 @lightdash/query-sdk 参考

编辑数据应用文件夹中的文件时,请先阅读随附的技能。这些技能与数据应用版本匹配,是本地开发的权威指南;本技能仅介绍如何在磁盘和 Lightdash 之间迁移数据应用。

使用自定义图表类型(企业版)

自定义图表类型是在 Chart Studio 中构建的可重复使用的可视化:一个 React 组件,Lightdash 会将查询结果和设置传递给它,并在项目中每个图表的探索器图表类型选择器中提供该组件。在磁盘上,它是位于 chart-types/<slug>/ 下的多文件 bundle,带有一个 lightdash-app.yml 清单文件,其中的 vizSchema 声明了组件读取的字段和选项。它不是数据应用(自身不执行查询),也不是旧版 Vega-Lite custom 图表。

图表类型遵循内容工作流:在临时目录中操作,除非用户要求,否则不要提交 bundle。

在本地创建图表类型:

lightdash apps create "Radial Gauge" --chart-type --path "$LD_DIR"   # scaffolds $LD_DIR/chart-types/radial-gauge/

下载——单独使用 --chart-types <ref> 即为完整命令(ref = slug、URL 或 UUID):

lightdash download --chart-types radial-gauge --path "$LD_DIR"
lightdash download --include-chart-types   # every chart type in the project (capped at 50; raise with --chart-types-limit <n>)
lightdash download --chart-types-only      # chart types only, skipping charts, dashboards, and spaces

下载使用自定义图表类型渲染的图表时,也会下载该图表类型。在图表 YAML 中,绑定方式为 chartConfig.type: data_app_viz,并使用 config.dataAppVizSlug、fieldMapping 和 optionValues。

上传:

lightdash upload --chart-types radial-gauge --path "$LD_DIR"   # one chart type (slug = folder name, URL, or UUID)
lightdash upload --include-chart-types --path "$LD_DIR"        # every chart type folder on disk

如果图表 YAML 通过 dataAppVizSlug 绑定到某个图表类型,而该图表类型不存在于目标项目中,则上传会失败。请先上传图表类型,或在同一次运行中传入 --chart-types <ref>(图表类型会先于图表上传)。

在文件夹中编辑。进入 chart-types/<slug>/,并且在修改 src/ 之前,先阅读其 AGENTS.md 以及 reusable-visualization 和 developing-chart-types-locally 技能:

  • reusable-visualization — 组件约定:useVizContext() 是与宿主通信的唯一渠道,组件本身绝不会查询或获取任何内容
  • developing-chart-types-locally — 确保 vizSchema 与组件保持同步、使用 lightdash apps validate --build、进行固定数据预览,以及完成上传和验证循环

这些文件与图表类型版本匹配,是编辑图表类型的权威指南。本技能仅介绍如何在磁盘和 Lightdash 之间迁移图表类型。

使用组织数据应用主题

组织数据应用主题是位于 themes/<slug>/ 下的多文件包,会自动参与 lightdash download --organization 和 lightdash upload --organization。它们没有独立的命令组或主题专用选择器。

创建、编辑、迁移、同步或测试主题之前,请阅读并遵循 数据应用主题,了解清单约定、资源规则、同步行为和生成边界。

使用 Preview 进行测试

对于较大的改动,请在隔离环境中测试:

lightdash preview --name "my-feature"
# Make changes and iterate
lightdash stop-preview --name "my-feature"

CLI 快速参考

命令用途
lightdash deploy同步语义层(指标、维度)
lightdash upload上传图表/仪表板
lightdash download将图表/仪表板下载为 YAML
lightdash lint在本地验证 YAML
lightdash preview创建临时测试项目
lightdash warehouse-catalog --json发现原始数据仓库表
lightdash sql "..." -o file.csv对数据仓库运行 SQL 查询
lightdash run-chart -p chart.yml对数据仓库执行图表 YAML 查询
lightdash apps create <name>在本地搭建新的数据应用(企业版)
lightdash apps create <name> --chart-type在本地搭建新的自定义图表类型(企业版)
lightdash apps preview在本地对 Lightdash 实例运行数据应用
lightdash apps validate验证数据应用或图表类型的源文件、清单和语义引用
lightdash download --chart-types <ref> / lightdash upload --chart-types <ref>在磁盘与 Lightdash 之间迁移自定义图表类型(企业版)

完整的命令文档请参阅 CLI 参考。

语义层

语义层定义数据模型。完整配置请参阅各个参考文档:

  • 表参考 — 可查询实体、标签、联接
  • 指标参考 — 聚合计算(count、sum、average、min、max、number 等)
  • 维度参考 — 用于分组/筛选的属性(string、number、boolean、date、timestamp)
  • 联接参考 — 跨表关系
  • 用户属性参考 — SQL 变量、行级安全、访问控制

图表类型

所有图表都采用相同的基础结构:

chartConfig:
  config: {}        # Type-specific — see individual references
  type: <type>
contentType: chart              # Required: chart, dashboard, or sql_chart
dashboardSlug: my-dashboard  # Optional: scopes chart to dashboard (won't appear in space)
metricQuery:
  dimensions:
    - my_explore_category
  exploreName: my_explore     # Required: which explore to query
  filters: {}
  limit: 500
  metrics:
    - my_explore_total_sales
  sorts: []
name: "Chart Name"
slug: unique-chart-slug
spaceSlug: target-space
tableConfig:
  columnOrder: []
tableName: my_explore           # Required: top-level explore/table name
version: 1

键排序: 所有 YAML 键在每个嵌套层级都必须按字母顺序排序。CLI 会使用 sortKeys: true 写入文件,并在上传时对未排序的键发出警告。手动编写或编辑 YAML 时,请按字母顺序排列键,以避免警告和冗杂的差异。

图表范围: 仅对共享图表使用 spaceSlug。添加 dashboardSlug 可将图表限定在特定仪表板中(它不会显示在空间中)。

嵌套空间: 空间可以嵌套。在 YAML 中,spaceSlug 使用 parent/child 语法来指定子空间——/ 表示层级关系。示例:

spaceSlug: sales              # Top-level space "sales"
spaceSlug: sales/maps         # Sub-space "maps" inside "sales"
spaceSlug: sales/eu/forecasts # Deeper nesting works the same way

每个路径段都必须是该层级中已存在(或即将创建)的空间 slug。像 sales-maps 这样的单独 slug 表示平铺的顶层空间,而不是子空间——只有斜杠才能创建层级结构。

选择合适的图表类型
数据模式推荐图表原因
随时间变化的趋势折线图或面积图(cartesian)在 X 轴上显示随时间的连续变化
类别对比条形图(cartesian)便于直观比较不同类别
部分与整体的关系pie 或 treemap显示总和为 100% 的比例
单个 KPI 指标big_number突出显示一个重要数值
转化阶段funnel直观显示连续步骤之间的流失情况
目标完成进度gauge显示当前值与目标值的关系
地理数据map在地图上绘制数据点或区域
类别之间的流向sankey显示数值如何从源节点流向目标节点
详细记录table显示带有排序和格式设置的原始数据
以上类型均无法覆盖的可视化自定义图表类型图表类型选择器中提供的可复用 React 组件 — 参见自定义图表类型
Vega-Lite 图表custom(旧版)适用于已使用 chartConfig.type: custom 保存的图表,或不支持自定义图表类型的项目(enterprise)
类型用途参考
cartesian条形图、折线图、面积图、散点图笛卡尔图表
pie整体中的部分饼图
table数据表表格
big_numberKPI大数字
funnel转化漏斗漏斗图
gauge进度指示器仪表盘
treemap层次数据树图
map地理数据地图
sankey流向图桑基图
custom旧版 Vega-Lite 自定义图表自定义可视化
data_app_viz由自定义图表类型渲染的图表自定义图表类型

SQL 图表(contentType: sql_chart)直接从数据仓库原始 SQL 保存,而非从探索保存。参见 SQL 图表参考。

仪表板

仪表板以网格布局排列图表和内容。YAML 结构、图块类型、标签页和筛选器请参见仪表板参考。

探索数据仓库

构建模型时,使用 lightdash sql 探索数据:

# Preview table structure
lightdash sql "SELECT * FROM orders LIMIT 5" -o preview.csv

# Check distinct values for a dimension
lightdash sql "SELECT DISTINCT status FROM orders" -o statuses.csv

# Test metric calculations
lightdash sql "SELECT SUM(amount) FROM orders" -o test.csv

工作流模式

模式适用场景
直接模式(deploy + upload)独立开发、快速迭代
预览优先团队协作、复杂变更
CI/CD合并时自动执行

详细示例和 CI/CD 配置请参见工作流参考。

资源

语义层
图表
仪表板与工作流
外部资源

评论

支持 Markdown