flutter_chen_kchart

Flutter 生态可用于生产环境的 K 线图表库 / A Production-Ready K-Line Chart for Flutter

Pub Version License: MIT

🚀 Why flutter_chen_kchart?

A Flutter candlestick chart library focused on practical trading/charting scenarios. Built with CustomPainter, supports cross-platform rendering and interactive chart operations.

选择理由 / Why Choose Us:

  • 🏆 Flutter 生态首个 真正达到可商用的 K线图表库
  • 🚀 原生性能 CustomPainter 实现,丝滑流畅
  • 🌍 全平台支持 iOS/Android/Web/Windows/macOS/Linux
  • 🔧 功能完整 开源包内提供常见图表与交互能力
  • 📈 持续更新 长期维护,功能不断完善

效果展示 / Effect Display

🌐 在线演示 / Online Demo

🌐 App演示 / App Demo

基础K线图表 交互选择功能
绘图工具演示 高级绘图功能

📦 快速开始 / Quick Start

1. 安装 / Install

dependencies:
  flutter_chen_kchart: ^3.0.0

2. 基本用法 / Basic Usage

import 'package:flutter_chen_kchart/k_chart.dart';

final KChartController _controller = KChartController();

KChartWidget(
  datas,
  controller: _controller,
  enableTheme: true,
  colorVisionMode: ChartColorVisionMode.colorBlindFriendly,
  minScale: 0.1,
  maxScale: 5.0,
  scaleSensitivity: 2.5,
  onScaleChanged: (scale) {
    print('Current scale: ${(scale * 100).toInt()}%');
  },
  enableDrawingTools: true,
  enablePerformanceMode: true,
)

🛠️ 配置参数 / Configuration

参数/Property 类型/Type 默认值/Default 说明/Description
minScale double 0.2 最小缩放比例 / Min scale
maxScale double 3.0 最大缩放比例 / Max scale
scaleSensitivity double 2.5 缩放灵敏度 / Scale sensitivity
enablePinchZoom bool true 双指缩放 / Pinch zoom
enableScrollZoom bool true 滚轮缩放 / Mouse wheel zoom
enableTheme bool true 启用主题系统 / Enable theme
colorVisionMode ChartColorVisionMode? null 颜色视觉模式,可启用色盲友好配色 / Color-vision mode
enablePriceLineInteraction bool true 启用价格线点击/拖拽交互 / Enable price-line interactions
enableDrawingTools bool false 启用绘图工具 / Drawing tools
enablePerformanceMode bool false 性能优化 / Performance mode
controller KChartController? null 控制器 / Controller
onScaleChanged Function(double)? null 缩放回调 / Scale callback

更多参数详见源码和注释。

无障碍配色 / Accessibility Palette

ChartThemeManager.setColorVisionMode(
  ChartColorVisionMode.colorBlindFriendly,
);

ChartThemeManager.setColorVisionPalette(
  const ChartColorVisionPalette(
    upColor: Color(0xFF1E88E5),
    dnColor: Color(0xFFFB8C00),
  ),
);

色盲友好模式会把默认的红涨绿跌切换为更容易区分的蓝涨橙跌,并同步调整深度图、当前价格标签和信息弹层中的涨跌颜色。 如果你有自己的视觉规范,也可以通过 ChartColorVisionPalette 单独指定色盲模式下的涨跌颜色。


📊 技术指标 / Indicators

  • MA, BOLL, MACD, KDJ, RSI, WR, CCI

🖌️ 绘图工具 / Drawing Tools

支持的绘图工具

  • 📈 趋势线 / 趋势角度 - 支持角度显示
  • ↕️ 垂直线 / 水平线 - 精确定位
  • ➡️ 射线 / 水平射线 - 延伸至图表边界
  • 🏹 箭头标注 - 重要位置标记
  • 十字线 - 价格时间定位

绘图模式

  • 🔄 连续绘制 - 快速添加多个图形
  • 🎯 精确控制 - 像素级精度
  • 🧲 磁铁吸附 - 智能对齐K线
  • 👁️ 显示隐藏 - 灵活管理绘图
  • 🗑️ 批量清除 - 一键清理

✨ 当前版本 / Current Package Scope

  • 开源包当前版本为 3.0.0
  • 包含 K 线主图、成交量、副图指标、主题系统、缩放/滚动交互、信息弹层、当前价格线和绘图工具
  • 示例工程位于 example/
  • 详细变更记录见 CHANGELOG.md

💰 商用版获取 / Get Commercial Version

📞 联系方式 / Contact


📚 文档与示例 / Documentation


🤝 社区与支持 / Community & Support


🎯 路线图 / Roadmap

v3.x 计划

  • x 3.0.0 - 绘图工具及模式套件、交互与渲染结构优化
  • x 绘图新增完善
  • 高级技术指标
  • 完全对标TradingView/主流交易所KChart

📜 许可证 / License

  • 开源包: MIT License
  • 商用支持/定制: 请通过上方联系方式咨询

📢 结语 / Final Words

🎉 Flutter 终于有了真正可商用的 K线图表库!

🚀 不再需要 WebView,不再被 TradingView 限制

💪 让你的 Flutter 金融应用更专业、更流畅!

立即开始 / Get Started Now

  1. GitHub Star 支持我们
  2. 📦 安装免费版 体验功能
  3. 💬 联系我们 获取商用版
  4. 🚀 构建你的 专业金融应用

Made with ❤️ by Flutter Community

如果这个库对你有帮助,请在 GitHub 上给我们一个 Star ⭐