Bỏ qua, đến nội dung

Câu hỏi thường gặp (FAQ) — Charts

Sử dụng

Biểu đồ không hiển thị dữ liệu?

Kiểm tra theo thứ tự:

  1. Collection có dữ liệu: Đảm bảo collection đã chọn có ít nhất vài bản ghi
  2. Cấu hình measures: Phải chọn ít nhất một measure (ví dụ: COUNT(id))
  3. Cấu hình dimensions: Phải chọn ít nhất một dimension cho group by
  4. Filter quá chặt: Nếu có filter, thử bỏ filter để kiểm tra có dữ liệu không
  5. Field type: Measure phải là trường số (integer, float, decimal) — không dùng string

Có thể tạo dashboard với nhiều biểu đồ không?

Có. Thêm nhiều Chart blocks trên cùng một trang:

  1. Nhấn Add Block → chọn Chart → cấu hình biểu đồ 1
  2. Nhấn Add Block lần nữa → chọn Chart → cấu hình biểu đồ 2
  3. Lặp lại cho các biểu đồ tiếp theo
  4. Sắp xếp layout bằng kéo-thả

TIP

Để có dashboard chuyên nghiệp với layout kéo-thả, filter toàn trang, export PDF — sử dụng plugin-data-visualization thay vì plugin charts cơ bản này.

Biểu đồ có tự cập nhật khi dữ liệu thay đổi không?

Có nếu bật Auto-refresh. Khi bật:

  • Biểu đồ tự query lại dữ liệu mỗi N giây
  • Phù hợp cho dashboard theo dõi real-time (đơn hàng, traffic, metrics)
  • Lưu ý: tần suất refresh quá cao có thể ảnh hưởng hiệu năng database

Nếu không bật auto-refresh, biểu đồ chỉ cập nhật khi reload trang.

Có hỗ trợ biểu đồ phức tạp (scatter, radar, heatmap)?

Plugin charts cơ bản chỉ hỗ trợ 4 loại: Bar, Line, Pie, Area. Để có biểu đồ nâng cao:

Loại biểu đồplugin-chartsplugin-data-visualization-pro
Bar, Line, Pie, Area
Scatter (phân tán)
Radar
Heatmap
Gauge
Funnel
Dual-axis

Làm sao lọc dữ liệu biểu đồ?

Trong cấu hình biểu đồ, sử dụng Filter:

Loại filterVí dụMô tả
Bằngstatus = 'completed'Chỉ đơn hàng hoàn tất
Khoảng thời giancreatedAt >= '2024-01-01'Dữ liệu từ đầu năm
Trong danh sáchcategory IN ('A', 'B')Chỉ danh mục A và B
Kết hợpNhiều điều kiện AND/ORLọc phức tạp

Hiệu năng

Biểu đồ tải chậm?

Nguyên nhânGiải pháp
Dữ liệu quá nhiềuThêm filter để giới hạn phạm vi
Thiếu indexThêm database index cho field dimension
Aggregation phức tạpĐơn giản hoá query, giảm số dimensions
Auto-refresh quá nhanhTăng interval (ví dụ: 60 giây thay vì 5 giây)
Nhiều biểu đồ cùng trangGiảm số biểu đồ hoặc dùng limit

Tối ưu hiệu năng

  • Thêm index cho các field dùng làm dimension và filter
  • Sử dụng limit (ví dụ: top 10 sản phẩm) thay vì hiển thị tất cả
  • Với dữ liệu lớn, cân nhắc tạo materialized view hoặc bảng tổng hợp

Aggregation query có ảnh hưởng database không?

Có. Mỗi biểu đồ chạy một aggregation query trên database. Với nhiều biểu đồ trên cùng trang + auto-refresh:

  • Mỗi lần refresh = N queries (N = số biểu đồ)
  • Giải pháp: Đặt auto-refresh interval hợp lý (30–60 giây), thêm index, sử dụng filter

Plugin đã Deprecated

Tại sao nên chuyển sang plugin-data-visualization?

  • Nhiều chart types hơn: Scatter, Radar, Heatmap, Gauge, Funnel...
  • Dashboard kéo-thả: Layout chuyên nghiệp, responsive
  • Query builder nâng cao: Hỗ trợ JOIN, sub-query, custom SQL
  • Export: Xuất dashboard ra PDF, PNG
  • Performance: Tối ưu query và caching tốt hơn

Dữ liệu charts cũ có mất khi chuyển plugin không?

Cấu hình biểu đồ sẽ cần tạo lại trong plugin mới. Dữ liệu collection (nguồn dữ liệu) không bị ảnh hưởng. Quy trình:

  1. Ghi lại cấu hình biểu đồ hiện tại (collection, measures, dimensions)
  2. Cài plugin-data-visualization
  3. Tạo lại biểu đồ với cấu hình tương tự
  4. (Tuỳ chọn) Tắt plugin-charts sau khi chuyển xong