9.0 KiB
XCharts
A powerful, easy-to-use, configurable charting and data visualization library for Unity.
Unity数据可视化图表插件。
中文文档
A powerful and easy-to-use data visualization library for Unity. It supports more than ten built-in charts, including line, bar, pie, radar, scatter, heatmap, ring, candlestick, polar, parallel coordinates, as well as extended charts such as 3d pie, 3d bar, 3d pyramid, funnel, gauge, liquid, pictorialbar, gantt, and treemap.
XCharts3.0 Tutorial
XCharts3.0 API
XCharts3.0 FAQ
XCharts3.0 Configurate
XCharts3.0 Changelog
XCharts3.0 Support
Features
- Pure code rendering: The chart is completely rendered with pure code, without the need for additional texture or shader resources.
- Visual configuration: Visual configuration of parameters with real-time preview of the effect, and support for dynamic modification of configuration and data during runtime.
- High customizability: Supports arbitrary adjustments from theme and configuration parameters; supports custom drawing, callback functions, and custom implementations of charts.
- Multiple built-in charts: Supports various built-in charts such as line charts, bar charts, pie charts, radar charts, scatter plots, heat maps, polar charts, K-line charts, parallel coordinates, etc.
- Multiple extended charts: Supports extended charts such as 3D column charts, 3D pie charts, funnel charts, pyramids, dashboards, water level charts, iconic bar charts, Gantt charts, and tree maps.
- Multiple extended features: Supports extended UI components such as tables and statistical values.
- Multiple chart combinations: Supports arbitrary combinations of built-in charts, with multiple same or different types of charts displayed simultaneously in the same chart.
- Various coordinate systems: Supports coordinate systems such as Cartesian coordinates, polar coordinates, and single axes.
- Rich components: Supports common components such as titles, legends, tooltips, markings, marking areas, data area zooming, and visual mapping.
- Rich line charts: Supports various line charts such as straight line charts, curved line charts, dashed line charts, area charts, step line charts, etc.
- Rich bar charts: Supports various bar charts such as stacked bar charts, stacked percentage bar charts, zebra bar charts, and capsule bar charts.
- Rich pie charts: Supports various pie charts such as ring charts, rose charts, ring rose charts, etc.
- Rich lines: Supports various lines such as solid lines, curves, step lines, dashed lines, dot lines, dotted lines, and double dot-dashed lines.
- Custom drawing: Supports custom chart content drawing with powerful drawing APIs for drawing points, lines, and other graphics.
- Large data rendering: Supports rendering of tens of thousands of data points; supports sampling rendering; special simplified charts support better performance.
- Custom themes: Supports theme customization and import/export; includes both light and dark default themes.
- Animations and interactions: Supports various animations such as fade-in animation, fade-out animation, change animation, addition animation, and * interactive animation; supports interactive operations such as data filtering, view zooming, and detailed display on multiple platforms.
- Third-party extensions: Supports integration with TexMeshPro and New Input System.
- Version and compatibility: Supports all Unity versions above 5.6 and runs on all platforms.
Screenshots
Attention
XCharts3.0
is not fully compatible withXCharts2.0
version, upgrading3.0
may require some code adjustments, and some chart configurations need to be readjusting. It is recommended that old projects can continue to useXCharts2.0
, and new projects are recommended to useXCharts3.0
.XCharts2.0
enters the maintenance phase, and only seriousbugs
will be fixed later, in principle, no more new features will be added.XCharts
theoretically supportsUnity 5.6
and above, but due to limited version testing, it is inevitable to slip up, and version compatibility issues can be raised.- This repository only contains
XCharts
source code, does not containDemo
sample section. Need to look atDemo
please go to the sample source code XCharts - Demo repo. You can also view the running effect ofWebGL
in your browser Online Demo.
Use
- Import
XCharts
unitypackage or source code into the project. - Right-click
Hierarchy
view and chooseXCharts->LineChart
to create a default LineChart. - You can adjust the parameters of each component in
Inspector
and see the real-time effects inGame
view. - For more details, see [XCharts Tutorial: 5-minute tutorial]
- For the first time, it is recommended to read the tutorial carefully.
Branch
master
: indicates the development branch. The latest changes and new features are first committed to themaster
branch, and after some time from themaster
branchmerge
to the3.0
branch, and therelease
version.3.0
: Stable branch of XCharts 3.0. It is generally updated once a month, with the latest changes from themaster
branchmerge
, and therelease
version is released.2.0
: A stable branch of XCharts 2.0. With Demo, currently no longer maintenance, only to modify serious bugs.2.0-upm
: Stable UMP branch of XCharts 2.0. Only the Package part is included without Demo. It is dedicated to the UMP and is not maintained.1.0
: Stable branch of XCharts 1.0. With Demo, no maintenance.1.0-upm
: stable UMP branch of XCharts 1.0. No Demo, no maintenance.
FAQ
-
Is
XCharts
free to use?
A:XCharts
uses theMIT
licence and is free to use. You can also subscribe toVIP
to enjoy more value-added services. -
Does
XCharts
support code to dynamically add and modify data? Does it support getting data fromExcel
or a database?
A: Support code to dynamically add and modify data, but data needs to be parsed or retrieved by itself, and then added toXCharts
by calling the public interface ofXCharts
. -
Does this plugin work on other platforms (e.g. Winform or WPF) besides Unity?
A: It is currently only supported on Unity. Theoretically any version of Unity that supportsUGUI
can runXCharts
. -
What about the jags? What magnitude of data is supported? A: XCharts is based on UGUI implementation, so the problems encountered in UGUI will also exist in XCharts. For example, the sawtooth problem, such as the number of vertices in
Mesh
exceeds65535
. Solutions to these two problems can be found in Q&A 16 and Q&A 27. Due to theMesh
of the65535
vertex limit, the currentXCharts
singleLine
supports about20,000
of data, of course, open sampling can support more data to draw, but at the same time it will consume more CPU.
Changelog
Licenses
- MIT License
- Free commercial, secondary development
- The extended charts and advanced features sections require a separate purchase license
Other
email: monitor1394@gmail.com