Flutter Graph View
Widgets for beautiful graphic data structures, such as force-oriented diagrams.
![image](https://github.com/graph-cn/flutter_graph_view/assets/15630211/0d368544-ad0b-441a-9bbc-a1d0ccdc0fd6)
![image](https://github.com/graph-cn/flutter_graph_view/assets/15630211/dae205f3-6706-44c6-acd6-83a86140a955)
![image](https://github.com/graph-cn/flutter_graph_view/assets/15630211/486b596e-352d-4110-ab2a-ad2381f1ba02)
https://github.com/graph-cn/flutter_graph_view/assets/15630211/a035cd7d-bdac-4ef6-8abf-74594e9d699b
## Features
- [x] Data converter: convert business data into graphic view data.
- [x] Algorithm: calculate vertex layout.
- [x] Force directed algorithm.
- [x] Random algorithm (In example folder).
- [x] Support algorithm decorator.
- [x] Breathe decorator (optional).
- [x] Provide decorators that follow Hooke's Law for related nodes
- [x] Provide a decorator for Hooke's Law from the center outward for all nodes
- [x] Provide mutually exclusive Coulomb's law decorators for subgraph root nodes
- [x] Hooke's Law decorator that provides border buffering collisions for all nodes
- [x] Add a counter decorator in the figure to convert node forces into motion
- [x] Data panel embedding.
- [x] Style configuration.
- [ ] More graphical interactions.
## Getting started
```sh
flutter pub add flutter_graph_view
```
## Usage
```dart
// Copyright (c) 2023- All flutter_graph_view authors. All rights reserved.
//
// This source code is licensed under Apache 2.0 License.
import 'dart:math';
import 'package:flutter/material.dart';
import 'package:flutter_graph_view/flutter_graph_view.dart';
class DecoratorDemo extends StatelessWidget {
const DecoratorDemo({super.key});
@override
Widget build(BuildContext context) {
var vertexes =