Kedro-Viz帮助可视化Kedro数据和分析管道
项目描述
Kedro-Viz
✨ 数据科学管道。美观设计 ✨
实时演示:https://demo.kedro.org/
简介
Kedro-Viz是用于使用Kedro构建数据科学管道的交互式开发工具。Kedro-Viz还允许用户查看和比较Kedro项目中的不同运行。
功能
- ✨ 完整可视化Kedro项目和其管道
- 🎨 支持内置的浅色和深色主题
- 🚀 可扩展至拥有数百个节点的庞大管道
- 🔎 高度交互式,可过滤和搜索
- 🔬 模块化管道可视化专注模式
- 📊 丰富的元数据侧面板,显示参数、图表等
- 📊 支持所有类型的 Plotly图表
- ♻️ 代码更改时自动重新加载
- 🧪 支持在Kedro项目中跟踪和比较运行
- 🎩 更多功能即将到来
安装
您可以使用以下两种方式使用Kedro-Viz
-
作为 Kedro插件(最常见的方式)。
要将Kedro-Viz安装为Kedro插件,请按照以下步骤操作
pip install kedro-viz
-
作为独立React组件(用于在您的Web应用程序中嵌入Kedro-Viz)。
要安装独立React组件,请按照以下步骤操作
npm install @quantumblack/kedro-viz
使用方法
Kedro和Kedro-datasets的兼容性
请确保您的 Kedro
、Kedro-Viz
和 Kedro-datasets
版本与以下表格中支持的版本相匹配
Python版本 | 最后支持 | ||
---|---|---|---|
Kedro | Kedro-Viz | Kedro-datasets | |
3.6 | 0.17.7 | 4.1.1 | - |
3.7 | 0.18.14 | 6.7.0 | 1.8.0 |
3.8 | 最新 | 7.1.0 | 1.8.0 |
>= 3.9 | 最新 | 最新 | 最新 |
命令行使用
要从命令行以Kedro插件的方式启动Kedro-Viz,请从您的Kedro项目根目录中执行以下命令
kedro viz run
浏览器标签页将自动打开,以在 http://127.0.0.1:4141/
提供可视化。
Kedro-Viz还支持以下额外的命令行参数
Usage: kedro viz run [OPTIONS]
Visualise a Kedro pipeline using Kedro-Viz.
Options:
--host TEXT Host that viz will listen to. Defaults to
localhost.
--port INTEGER TCP port that viz will listen to. Defaults to
4141.
--browser / --no-browser Whether to open viz interface in the default
browser or not. Browser will only be opened if
host is localhost. Defaults to True.
--load-file FILE Path to load Kedro-Viz data from a directory
--save-file FILE Path to save Kedro-Viz data to a directory
-p, --pipeline TEXT Name of the registered pipeline to visualise. If not
set, the default pipeline is visualised
-e, --env TEXT Kedro configuration environment. If not specified,
catalog config in `local` will be used
--autoreload Autoreload viz server when a Python or YAML file change in
the Kedro project
--include-hooks A flag to include all registered hooks in your
Kedro Project
--params TEXT Specify extra parameters that you want to pass to
the context initializer. Items must be separated
by comma, keys - by colon, example:
param1:value1,param2:value2. Each parameter is
split by the first comma, so parameter values are
allowed to contain colons, parameter keys are not.
To pass a nested dictionary as parameter, separate
keys by '.', example: param_group.param1:value1.
--lite An experimental flag to open Kedro-Viz without Kedro
project dependencies.
-h, --help Show this message and exit.
要从命令行以Kedro插件的方式部署Kedro-Viz,请从您的Kedro项目根目录中执行以下命令
kedro viz deploy
Usage: kedro viz deploy [OPTIONS]
Deploy and host Kedro Viz on AWS S3.
Options:
--platform TEXT Supported Cloud Platforms like ('aws', 'azure', 'gcp')
to host Kedro Viz [required]
--endpoint TEXT Static Website hosted endpoint.(eg., For AWS - http://<b
ucket_name>.s3-website.<region_name>.amazonaws.com/)
[required]
--bucket-name TEXT Bucket name where Kedro Viz will be hosted [required]
--include-hooks A flag to include all registered hooks in your Kedro
Project
--include-previews A flag to include preview for all the datasets
-h, --help Show this message and exit.
要从命令行创建本地Kedro-Viz实例的构建目录,其中包含来自命令行的静态数据,请从您的Kedro项目根目录中执行以下命令
kedro viz build
Usage: kedro viz build [OPTIONS]
Create build directory of local Kedro Viz instance with Kedro project data
Options:
--include-hooks A flag to include all registered hooks in your Kedro
Project
--include-previews A flag to include preview for all the datasets
-h, --help Show this message and exit.
实验跟踪使用
要启用Kedro-Viz中的实验跟踪,您需要将Kedro-Viz的SQLiteStore
添加到您的Kedro项目中。
这可以通过将以下代码添加到您的Kedro项目src
文件夹中的settings.py
文件来实现。
from kedro_viz.integrations.kedro.sqlite_store import SQLiteStore
from pathlib import Path
SESSION_STORE_CLASS = SQLiteStore
SESSION_STORE_ARGS = {"path": str(Path(__file__).parents[2] / "data")}
上述设置完成后,跟踪数据集就可以用来跟踪Kedro运行的关联数据。有关如何使用跟踪数据集的更多信息,请参阅实验跟踪文档
注意
- 实验跟踪仅适用于Kedro-Viz >= 4.0.2和Kedro >= 0.17.5
- 在Kedro 0.17.6之前,在使用跟踪数据集时,您必须显式地将数据集标记为
versioned
,以便在Kedro-Viz实验跟踪标签中正确显示。从Kedro >= 0.17.6开始,这将自动完成
train_evaluation.r2_score_linear_regression:
type: tracking.MetricsDataset
filepath: ${base_location}/09_tracking/linear_score.json
versioned: true
独立React组件使用
要将Kedro-Viz作为独立React组件使用,您可以按照以下示例进行操作。但是,请注意,Kedro-Viz不支持服务器端渲染(SSR)。如果您正在使用Next.js或其他SSR框架,请了解此限制。
import KedroViz from '@quantumblack/kedro-viz';
import '@quantumblack/kedro-viz/lib/styles/styles.min.css';
const MyApp = () => (
<div style={{height: `100vh`}}>
<KedroViz
data={json}
options={/* Options to configure Kedro Viz */}
/>
</div>
);
与NextJS一起使用
import '@quantumblack/kedro-viz/lib/styles/styles.min.css';
import dynamic from 'next/dynamic';
const NoSSRKedro = dynamic(() => import('@quantumblack/kedro-viz'), {
ssr: false,
});
const MyApp = () => <NoSSRKedro data={json} />;
可以通过以下命令获取JSON
kedro viz run --save-file=filename
我们还建议将Kedro-Viz
组件包裹在一个具有指定高度的父HTML/JSX元素中(如上述示例所示),以便Kedro-Viz能够正确地应用样式。
有关如何将Kedro-Viz作为React组件使用的更多信息,请参阅此指南
我们的文档包含使用Kedro-Viz进行可视化的更多示例
Kedro-Viz在Visual Studio Code扩展中的应用
要使用Visual Studio Code中的Kedro-Viz可视化Kedro项目,请安装Visual Studio Code的Kedro扩展。
有关如何在Visual Studio Code中使用Kedro-Viz的更多信息,请参阅此指南
功能标志
Kedro-Viz使用功能标志来推出一些实验性功能。以下是目前正在使用的标志
标志 | 描述 |
---|---|
sizewarning | 从版本v3.9.1开始。在渲染非常大的图之前显示警告(默认 true ) |
expandAllPipelines | 从版本v4.3.2开始。在首次加载时展开所有模块化管道(默认 false ) |
要启用或禁用标志,请点击工具栏中的设置图标,并切换标志的开启/关闭。
Kedro-Viz还会在您的浏览器开发者控制台中记录一条消息,以显示当前在您的机器上设置的可用标志及其值。
维护者
Kedro-Viz由Kedro团队和来自世界各地的贡献者维护。
贡献
如果您想为Kedro-Viz做出贡献,请查看我们的贡献指南。
许可
Kedro-Viz遵循Apache 2.0许可证。
引用
如果您是学者,Kedro-Viz也可以帮助您,例如,作为可视化您出版物管道结构的工具。在我们的Zenodo上找到我们的引用参考。
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。