Chào các anh em, dạo này mình đang làm báo cáo trên Power BI và có một yêu cầu khá hay ho là làm sao để tự động đổi màu biểu đồ (cụ thể là cột trong Bar Chart) dựa trên một điều kiện nhất định.
Ví dụ, mình có biểu đồ thể hiện doanh thu theo từng tháng. Mình muốn các cột có doanh thu cao hơn mục tiêu thì hiển thị màu xanh lá, còn các cột dưới mục tiêu thì hiển thị màu đỏ. Điều này giúp người xem nắm bắt thông tin nhanh hơn rất nhiều.
Mình đã thử tìm hiểu và phát hiện ra cách làm này khá đơn giản, chủ yếu dùng Conditional Formatting kết hợp với một chút DAX.
Cách làm như sau:
- Đầu tiên, bạn cần tạo một cột tính toán mới trong Power BI (Calculated Column) hoặc một Measure để xác định điều kiện màu sắc. Ví dụ, mình tạo một Measure tên là
'Color Measure'với công thức như sau:
'Color Measure' = IF(SUM(Sales[Revenue]) > [Target], "Green", "Red")- Trong đó:
Sales[Revenue]là cột chứa giá trị doanh thu thực tế.[Target]là một Measure khác hoặc một giá trị cố định bạn đặt ra làm mục tiêu.- Tiếp theo, bạn chọn biểu đồ cột của mình.
- Vào mục Format (biểu tượng cây cọ vẽ) > Columns > Colors.
- Thay vì chọn màu cố định, bạn hãy click vào biểu tượng fx (Conditional formatting).
- Trong cửa sổ hiện ra:
- Format style: Chọn Rules.
- Field applicable to this format: Chọn Measure
'Color Measure'mà bạn vừa tạo. - Rules: Thiết lập các quy tắc. Ví dụ, nếu Measure
'Color Measure'là "Green" thì chọn màu xanh lá, nếu là "Red" thì chọn màu đỏ.
Vậy là xong! Biểu đồ của bạn sẽ tự động đổi màu theo đúng điều kiện mong muốn.
Cách này rất hữu ích cho việc trực quan hóa dữ liệu, giúp báo cáo trở nên sinh động và dễ hiểu hơn. Anh em nào có cách làm hay hơn hoặc gặp khó khăn gì thì cùng thảo luận nhé!