{"id":15033485,"url":"https://github.com/antvis/ava","last_synced_at":"2025-05-14T17:03:30.612Z","repository":{"id":37743704,"uuid":"231330802","full_name":"antvis/AVA","owner":"antvis","description":"🤖 A framework for automated visual analytics.","archived":false,"fork":false,"pushed_at":"2024-08-13T09:37:57.000Z","size":48697,"stargazers_count":1348,"open_issues_count":31,"forks_count":140,"subscribers_count":38,"default_branch":"master","last_synced_at":"2024-10-29T15:05:10.741Z","etag":null,"topics":["augmented-analytics","auto-insight","chart-aigc","chart-recommendation","charts","data-visualization","insight","insight-gpt","narrative-charts","visualization"],"latest_commit_sha":null,"homepage":"https://ava.antv.antgroup.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/antvis.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-02T07:32:48.000Z","updated_at":"2024-10-24T01:08:50.000Z","dependencies_parsed_at":"2023-02-17T17:45:47.484Z","dependency_job_id":"1f4feeb1-5c79-40b3-8e2e-6df6193f1d1e","html_url":"https://github.com/antvis/AVA","commit_stats":{"total_commits":916,"total_committers":47,"mean_commits":19.48936170212766,"dds":0.7827510917030568,"last_synced_commit":"41a168b8fbfa1544177d6bdc24be786b00a0d6f0"},"previous_names":[],"tags_count":81,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2FAVA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2FAVA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2FAVA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antvis%2FAVA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antvis","download_url":"https://codeload.github.com/antvis/AVA/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248161243,"owners_count":21057552,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["augmented-analytics","auto-insight","chart-aigc","chart-recommendation","charts","data-visualization","insight","insight-gpt","narrative-charts","visualization"],"created_at":"2024-09-24T20:21:25.440Z","updated_at":"2025-04-10T04:48:55.568Z","avatar_url":"https://github.com/antvis.png","language":"TypeScript","readme":"\u003cimg src=\"https://gw.alipayobjects.com/zos/antfincdn/R8sN%24GNdh6/language.svg\" width=\"18\" alt=\"Switch between English and Chinese\"\u003e English | [简体中文](./README.zh-CN.md)\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=\"200\" height=\"120\" src=\"https://mdn.alipayobjects.com/huamei_qa8qxu/afts/img/A*yOHIQ48aRwgAAAAAAAAAAAAADmJ7AQ/original\" alt=\"AVA logo\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003ci\u003eA framework for automated visual analytics.\u003c/i\u003e\n\u003ci\u003e\u003ca href=\"https://ava.antv.antgroup.com/\"\u003e\u003chttps://ava.antv.antgroup.com\u003e\u003c/a\u003e\u003c/i\u003e\n\n\u003c/div\u003e\n\n----\n\n## What is AVA\n\n[AVA](https://github.com/antvis/AVA) (\u003cimg src=\"https://mdn.alipayobjects.com/huamei_qa8qxu/afts/img/A*QzIsSrfsCW0AAAAAAAAAAAAADmJ7AQ/original\" width=\"16\" alt=\"AVA examples\"\u003e Visual Analytics) is a technology framework designed for more convenient visual analytics. The first **A** has multiple meanings: AI driven, Automated, Augmented, and **VA** stands for Visual Analytics. It can assist users in data processing, extracting insights from data, recommending and generating charts, and optimizing existing charts.\n\u003cbr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=\"800\" src=\"https://mdn.alipayobjects.com/huamei_kjfwsg/afts/img/A*OmYvSbCXy2gAAAAAAAAAAAAADvmcAQ/original\" alt=\"AVA examples\"\u003e\n\u003c/div\u003e\n\n## Composition\n\nAVA contains 2 packages, [@antv/ava](https://www.npmjs.com/package/@antv/ava) and [@antv/ava-react](https://www.npmjs.com/package/@antv/ava-react) : \n\n* [@antv/ava](https://www.npmjs.com/package/@antv/ava) : AVA core package, containing four main modules:\n\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003edata (Data Processing)\u003c/span\u003e: Data Processing Module. Used for statistical analysis and processing of datasets.\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003einsight (Auto Insight)\u003c/span\u003e: Automatic Insights Module. Automatically discover data insights from multi-dimensional data.\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003eckb (Chart Knowledge Base)\u003c/span\u003e: Chart Knowledge Base Module. Based on empirically derived knowledge and observations about the various fundamentals of visualization and charts, it is the cornerstone of intelligent chart recommendations.\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003eadvisor (Chart Recommendation)\u003c/span\u003e: Chart Recommendation Module. Recommend chart types and specific chart detail settings based on data and analysis needs, as well as chart optimization for existing charts.\n\n* [@antv/ava-react](https://www.npmjs.com/package/@antv/ava-react) : A plug-and-play React component library based on the integration of AVA capabilities, it contains three core components:\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003e\\\u003cNarrativeTextVis \\/\u003e\u003c/span\u003e: Demonstrate data insight interpretation text. In a full-flow presentation of data analysis, using text to describe data phenomena is as critical as giving insightful conclusions.\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003e\\\u003cInsightCard \\/\u003e\u003c/span\u003e: Present data insights in a combination of graphics and text. It is possible to either receive data directly and perform insights automatically, or to visualize and interpret only the insight result data for presentation.\n  * \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003e\\\u003cAutoChart \\/\u003e\u003c/span\u003e\u003e: Automatically recommends and renders the appropriate chart based on the data. It provides users with the ability to implement intelligent visualizations in one line of code, and the component is currently undergoing further upgrades.\n\n\n## Features\n\n* Intelligent drive: Integrates automation and intelligence to simplify the visual analysis process.\n* Rich functions: Its functions cover the whole process of data analysis, linking people and data, and connecting the \"last mile\" of the data analysis chain.\n* Flexible syntax: Rich built-in configuration items and support for customization.\n\n## Documentation\n\n* \u003ca href='https://ava.antv.antgroup.com/guide/intro' target='_blank'\u003eTutorial\u003c/a\u003e\n* \u003ca href='https://ava.antv.antgroup.com/api/ckb/ckb' target='_blank'\u003eAPI\u003c/a\u003e\n* \u003ca href='https://ava.antv.antgroup.com/examples' target='_blank'\u003eExamples\u003c/a\u003e\n\n## Getting Started\n\nNPM package manager can be used to install  [@antv/ava](https://www.npmjs.com/package/@antv/ava) and [@antv/ava-react](https://www.npmjs.com/package/@antv/ava-react).\n\n```bash\n$ npm install @antv/ava\n$ npm install @antv/ava-react\n```\n\nThe following two examples show the use of [@antv/ava](https://www.npmjs.com/package/@antv/ava) and [@antv/ava-react](https://www.npmjs.com/package/@antv/ava-react) respectively (demo code based on React):\n\n1. **Demo 1**: Use the \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003einsight (Auto Insight)\u003c/span\u003e in [@antv/ava](https://www.npmjs.com/package/@antv/ava) to extract data insights. Input multi-dimensional data, the backend automatically runs different algorithms to find interesting patterns in the data, evaluates them uniformly and returns high-quality data insights according to the score.\n\n    ```js\n    import { getInsights } from '@antv/ava';\n\n    //  Input: Multi-dimensional data\n    const data = [\n        { year: '2000', value: 100 },\n        { year: '2001', value: 200 },\n        { year: '2002', value: 220 },\n        { year: '2003', value: 230 },\n        { year: '2004', value: 245 },\n        { year: '2005', value: 156 },\n        { year: '2006', value: 178 },\n        { year: '2007', value: 180 },\n        { year: '2008', value: 190 },\n        { year: '2009', value: 1000 },\n    ]\n\n    // The insightRes contains interesting insights from the data.\n    const insightRes = getInsights(data)\n    ```\n \n2. **Demo 2**: Use \u003cspan style=\"background-color:#A9A9A9; padding:2px 4px; border-radius:4px;color: black;\"\u003e\\\u003cInsightCard \\/\u003e\u003c/span\u003e in [@antv/ava-react](https://www.npmjs.com/package/@antv/ava-react) to display the insight results. This component can display data insight results directly, here using the insight results from Demo 1 as input:\n\n    ```html\n    \u003cdiv id=\"root\"\u003e\u003c/div\u003e\n    ```\n\n    ```js\n    // import \u003cInsightCard /\u003e component\n    import { InsightCard } from '@antv/ava-react';\n\n    const root = ReactDOM.createRoot(document.getElementById('root'));\n\n    // render\n    root.render(\n      \u003cInsightCard insightInfo={insightRes.insights[0]} visualizationOptions={{ lang: 'zh-CN' }} /\u003e\n    );\n    ```\n\n    The result of the rendering is as follows:\n    \u003cdiv align=\"center\"\u003e\n      \u003cimg width=\"800\" src=\"https://mdn.alipayobjects.com/huamei_kjfwsg/afts/img/A*i0jhSKWjCbkAAAAAAAAAAAAADvmcAQ/original\" alt=\"Data Insight Results\"\u003e\n    \u003c/div\u003e\n\n\n\n## Contribution [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)\n\nWe welcome all contributions. Please read our [Contributing Guide](./CONTRIBUTING.md) first. You can submit any ideas as [pull requests](https://github.com/antvis/AVA/pulls) or as [GitHub issues](https://github.com/antvis/AVA/issues). Let's build a better AVA together.\n\nMore at [Wiki: Development](https://github.com/antvis/AVA/wiki/Development).\n\n## Collaboration\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://idvxlab.com/\"\u003e\u003cimg src=\"https://gw.alipayobjects.com/zos/antfincdn/rxgntN5msN/idvx.png\" alt=\"iDVx\" width=\"140\" align=\"middle\" hspace=\"20\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n## Papers\n\n[VizLinter](https://vegalite-linter.idvxlab.com/)\n\n\u003cdiv style=\"font-size: 12px; color: grey\"\u003e\nChen, Q., Sun, F., Xu, X., Chen, Z., Wang, J. and Cao, N., 2021. VizLinter: A Linter and Fixer Framework for Data Visualization. \u003ci\u003eIEEE transactions on visualization and computer graphics\u003c/i\u003e, 28(1), pp.206-216.\n\u003c/div\u003e\n\u003cbr\u003e\n\n[《数据可视化设计的类型学实践》（Exploring the Typology of Visualization Design）](https://oversea.cnki.net/KCMS/detail/detail.aspx?dbcode=CJFD\u0026dbname=CJFDAUTO\u0026filename=MSDG202203021\u0026uniplatform=OVERSEAS_EN\u0026v=HcZsiecIxauSoKEB1s92_BImgnrMiazYsfZUpb-gcl0zXYx_MEwv5alz1UgtPjz1)\n\n\u003cdiv style=\"font-size: 12px; color: grey\"\u003e\n蓝星宇, 王嘉喆. 数据可视化设计的类型学实践, 《美术大观》, 2022(3), 149-152.\n\u003c/div\u003e\n\n## License\n\nMIT@[AntV](https://github.com/antvis).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantvis%2Fava","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantvis%2Fava","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantvis%2Fava/lists"}