SmartChart レビュー: Django 製 NoBI 平台がデータ可視化と業務システムを一つの画面に統合する
このプロジェクトは「, , Echarts,SQL,API,VUE, Jupyter, pyecharts , , , , , , , , , , , , , .」を基盤として、実践的に使えるオープンソース実装を提供し、再利用可能なツールチェーンと統合手段を備えています。
ひと目でわかる
- これは何?
- SmartChart は Python + Django 製の低コードデータ可視化平台。ECharts ベースのグラフ、SQL データセット、ドラッグ&ドロップ配置、AI エージェント統合を備え、技術者向けに設計された NoBI ツールの実力を検証する。
- 誰に向いている?
- SmartChart は、Python と Django に慣れた技術者が、データ可視化ダッシュボードだけでなく、OA ワークフローやデータ入力フォームまで含めた業務システムを短期間で構築したい場合に適している。特に、既存の Django 基盤を持つ組織や、ECharts を直接触りたくないが細かいカスタマイズは必要という開発者に向く。
- 商用利用できる?
- できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- されています。最後のコミットは 45 日前です。
- 何の言語で書かれている?
- 主に Vue です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
Django 製 NoBI が解決するのは「データと画面の距離」
SmartChart は、データベースに接続して SQL でデータセットを作り、その結果を ECharts グラフとして画面に配置するまでの一連の流れを、ブラウザ上の管理画面で完結させる。README によれば、開発フローは「新建仪表盤 → 新增图形组件 → 编辑数据集(写 SQL)→ 编辑图形(配置 ECharts/HTML)→ 布局拖拽调整 → 预览/发布」と単純化されている。対象ユーザーは技術部門の開発者であり、非技術者向けの無コード BI とは明確に区別している。この設計は、データ基盤を持つ企業が、可視化ダッシュボードを短期間で作りたいが、Tableau や Power BI のような高額なライセンスや独自の学習コースを導入したくない、というニーズに応える。
アーキテクチャはデータサービス層、アプリ層、平台層の三層
README の製品アーキテクチャ図は、データサービス層(API 接口、自助取数、数据订阅、智能助手、智慧BI)、アプリ層(SmartChart 可视化、SmartPip 数据治理、填报服务)、平台層(数据流批处理、数据开发管理、多系统数据集成)の三層構造を示している。SmartChart はその中で可視化とデータサービスを担当し、SmartPip はデータ品質管理を担う。データセットの種類は、智能体(agent)、技能(tool)、组件(chart)、接口(api)の 4 つに拡張可能で、単なるグラフ表示だけでなく、API としてデータを外部に公開する機能も持つ。この構成は、ダッシュボードを一つの独立アプリとして閉じるのではなく、社内データ基盤の一部として組み込むことを意図している。
低コードだが「無コード」ではない設計思想
SmartChart の設計理念は「低代码而非无代码」と明記されており、技術者に自由度を残す方針だ。グラフ設定では ECharts のオプションを直接編集でき、HTML も書ける。DIV 設定に CSS を書くことも可能と change log に記載されている。つまり、画面上で完結する無コード BI とは異なり、JavaScript や CSS の知識があれば、標準の ECharts では表現できないカスタムビジュアライゼーションを組み込める。一方で、この自由度は学習コストを意味する。ECharts の設定に慣れていない開発者は、まず公式ドキュメントで ECharts のオプション構造を学ぶ必要がある。
導入は pip install から始まる
README のデプロイ方案によれば、開発テスト用途では pip install が推奨されている。具体的なコマンドは記載されていないが、pip install smartchart でインストールし、Django の manage.py 相当のコマンドで起動する流れが想定される。本番環境では uWSGI + Nginx の構成が推奨されており、Linux サーバーでの運用を前提としている。ログイン方式はユーザー名/パスワードに加えて、企業微信、钉钉、第三方 OAuth、メール登録をサポートする。設定ファイルとして config ファイルが存在し、接続プールやデータセットの管理は独立した管理ページから行う。
注意すべき制約: バージョン管理と AI 機能の実際
README には「仪表盘备份/恢复/快照」とあり、ダッシュボード単位でのバックアップは可能だが、Git のようなコードベースのバージョン管理とは異なる。チーム開発で複数人が同時にダッシュボードを編集する場合、コンフリクトの扱いが不明瞭だ。また、AI 機能は DeepSeek、ChatGPT、文心一言、通义、百炼智能体などの大規模言語モデルを統合するとあるが、実際の設定方法やプロンプト管理の詳細は README には記載されていない。AI エージェントを本番運用するには、外部 API キーの管理やコスト制御を自前で設計する必要がある。
代替案との比較: データドリブンか、プロセスドリブンか
README は伝統的 BI(Tableau や Power BI を暗に指す)との違いを「非技術者向けの無コード化」と対比している。確かに、これらのツールはドラッグ&ドロップの UI が中心で、SQL を直接書くことは稀だ。一方、SmartChart は SQL を書くことを前提としている。また、大屏設計器(DataV など)はフロントエンドの見た目に特化し、データ開発機能が弱いとされる。SmartChart はデータセット定義からグラフ配置までを一貫して行うため、データパイプラインが既に整備されている組織では、可視化層としての導入コストは低い。ただし、既存のデータウェアハウスが複雑なビジネスロジックを持つ場合、SmartChart のデータセットでそれを表現するには SQL の知識が必須となる。
メンテナンスコストとライセンスの実務的な論点
ライセンスは Apache-2.0 であり、商用利用や改変は自由だが、特許表示や著作権表示の保持が必要だ。README には「5000+ 企業で使用」とあるが、この数字を品質の根拠として扱うことはできない。また、リポジトリの最終プッシュ日時とリリース情報が取得できていないため、現在の開発アクティビティを判断する材料はない。Django ベースのため、Django のバージョンアップに追従する必要があり、ECharts もバージョンアップに伴うグラフ設定の互換性確認が発生する。README の Change Log は v3.9.9.18 で止まっており、8.0 が「持續發布中」とあるが、具体的なリリースノートは公式ドキュメントを参照する必要がある。
編集部の結論
SmartChart は、Python と Django に慣れた技術者が、データ可視化ダッシュボードだけでなく、OA ワークフローやデータ入力フォームまで含めた業務システムを短期間で構築したい場合に適している。特に、既存の Django 基盤を持つ組織や、ECharts を直接触りたくないが細かいカスタマイズは必要という開発者に向く。一方、非技術者が中心となってレポートを作成する現場や、クラウド型 BI の運用管理を外部に委託したい場合は不向き。導入前に、公式ドキュメント(help.smartchart.cn)でサポートされるデータベース一覧と、主従構成のスケジューリング要件を確認し、pip install smartchart で試用版を起動して、データセット定義とグラフ連携の流れが自社の開発フローに合うか検証すべき。
コミュニティノート