Skip to main content

Plotly Dash components based on AntV Infographic

Project description

feffery-infographic

🦋 轻松构建新一代声明式信息图可视化

Plotly Dash GitHub PyPI Ruff

简体中文 | English

Infographic Preview

适用于Python全栈应用开发框架Plotly Dash的组件库,基于AntV Infographic,提供丰富的信息图渲染功能。

目录

1 安装
2 API
3 基础使用
4 信息图语法参考
5 全部可用信息图示例
6 贡献者
7 进阶使用
8 更多应用开发教程

1 安装

pip install feffery-infographic -U

2 API

Infographic 信息图渲染组件

属性名 类型 默认值 说明
id string - 组件唯一 ID
key string - 更新当前组件的 key 值,可用于强制触发组件重绘
style dict - 当前组件的 CSS 样式对象
className string - 当前组件的 CSS 类名
syntax string - 必填,用于定义信息图内容的语法字符串
width number | string - 信息图容器宽度,支持数值或字符串(如 '100%'
height number | string - 信息图容器高度,支持数值或字符串(如 '500px'
padding number | list - 信息图容器内边距,支持数值或数组格式(如 [top, right, bottom, left]
editable boolean False 是否开启可编辑模式
exportTrigger dict - 触发图片导出或下载操作的配置对象,每次更新都会触发操作并在执行后重置为空
exportEvent dict - 监听最近一次图片导出事件的数据对象
debugWindowInstanceName string - 调试专用,设置后会将当前组件实例挂载到 window 对象下的指定变量名

exportTrigger 配置详解:

  • type: string,导出图片的格式,可选值有 'png''svg',默认为 'png'
  • dpr: number,导出 'png' 格式图片时的像素比,默认为 1
  • download: boolean,是否自动触发浏览器下载,默认为 True
  • fileName: string,下载文件的名称(不含后缀),默认为 'infographic_export'

exportEvent 结构详解:

  • timestamp: number,事件触发的时间戳。
  • type: string,导出的图片格式,可能值为 'png''svg'
  • data: string,导出的图片 dataURL 数据。

内置提示词模块

feffery_infographic.prompts 模块内置了针对大型语言模型(LLM)的提示词,旨在辅助生成标准的信息图语法内容。

变量名 说明
base_prompt 适用于中文场景的系统提示词,包含详细的语法规范、模板说明及生成流程。
base_prompt_en 适用于英文场景的系统提示词,内容结构与 base_prompt 保持一致。

使用示例:

from feffery_infographic.prompts import base_prompt

# 将 base_prompt 作为 system message 传递给 LLM
messages = [
    {"role": "system", "content": base_prompt},
    {"role": "user", "content": "请帮我生成一个关于互联网发展史的时间轴信息图"}
]

3 基础使用

import dash
from dash import html
import feffery_infographic as fi

app = dash.Dash(__name__)

app.layout = html.Div(
    [
        fi.Infographic(
            # 定义信息图语法
            syntax="""
infographic list-row-simple-horizontal-arrow
data
  items
    - label 步骤 1
      desc 开始
    - label 步骤 2
      desc 进行中
    - label 步骤 3
      desc 完成
""",
        )
    ],
    style={'padding': 50},
)

if __name__ == '__main__':
    app.run(debug=True)

Basic Usage

4 信息图语法参考

👉 https://infographic.antv.vision/learn/infographic-syntax

5 全部可用信息图示例

👉 https://infographic.antv.vision/gallery

6 贡献者

7 进阶使用

场景 功能描述 源码
流式渲染 基于最常见的SSE服务演示信息图语法的流式更新渲染 stream_render_example
可编辑 信息图中的文字等主要元素可进一步在线手动编辑 editable_example
下载图片 调用组件内置的图片下载功能,支持svgpng格式 download_example

8 更多应用开发教程

微信公众号「玩转 Dash」,欢迎扫码关注 👇

「玩转 Dash」知识星球,海量教程案例模板资源,专业的答疑咨询服务,欢迎扫码加入 👇

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

feffery_infographic-0.1.6.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

feffery_infographic-0.1.6-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file feffery_infographic-0.1.6.tar.gz.

File metadata

  • Download URL: feffery_infographic-0.1.6.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for feffery_infographic-0.1.6.tar.gz
Algorithm Hash digest
SHA256 1a78bdad3b3deaca3caea79297a04258064326aca7658395e7a234d73ec31be9
MD5 c4e3abd1de86c23f40cc631f0251fbec
BLAKE2b-256 0492600ae4f3a01db373f3c79fbca035054044ce2b19a40eb4bdadf82f1df739

See more details on using hashes here.

File details

Details for the file feffery_infographic-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for feffery_infographic-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8c52bf8c16aa4bd590a74ddbcca3e9ad27115b6aa73cf36c2c2d5cbca54ebc88
MD5 e73d2664de3c06c52d4530ddf060c83e
BLAKE2b-256 15939620b596478e9f27cd5cfae667c7335d2f695e797faa43166b99df0b724a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page