🎯 Mục tiêu bài học
Sau bài học này, bạn sẽ:
✅ Master 15+ built-in visuals và khi nào dùng
✅ Install custom visuals từ AppSource
✅ Conditional formatting: Colors, Data Bars, Icons
✅ Bookmarks + Buttons cho interactive toggle
✅ Custom Themes và Report formatting
Thời gian: 35 phút | Độ khó: Intermediate | Tool: Power BI Desktop
📖 Bảng Thuật Ngữ Quan Trọng
| Thuật ngữ | Tiếng Việt | Mô tả |
|---|---|---|
| Card Visual | Thẻ số | Single KPI number lớn |
| Matrix | Ma trận | Pivot table với expand/collapse |
| Treemap | Bản đồ cây | Hierarchical proportions |
| Funnel | Phễu | Stage conversion visualization |
| Gauge | Đồng hồ đo | Progress to target |
| AppSource | Chợ ứng dụng | Marketplace cho custom visuals |
| Deneb | Visual Deneb | Vega-Lite integration cho custom charts |
| Conditional Formatting | Định dạng có điều kiện | Colors, icons, data bars theo rules |
| Bookmark | Đánh dấu | Save dashboard state (filters, visibility) |
| Theme | Chủ đề | JSON-based consistent design |
Checkpoint
Card = single KPI. Matrix = pivot table. AppSource = custom visual marketplace. Bookmark = saved state. Conditional Formatting = dynamic colors/icons!
📊 1. Built-in Visuals
1.1 Visual Gallery
| Visual | Best For | DAX Needed? |
|---|---|---|
| Bar/Column | Category comparison | Basic SUM |
| Line | Trends over time | Basic SUM |
| Pie/Donut | Part-to-whole (max 5) | Basic SUM |
| Scatter | 2-variable relationship | Multiple measures |
| Table | Detail data | None |
| Matrix | Pivot table | None |
| Card | Single KPI number | Measure |
| Map / Filled Map | Geographic data | Measure |
| Treemap | Hierarchical proportions | Measure |
| Waterfall | Contribution breakdown | Auto |
| Funnel | Stage conversion | Measure |
| Gauge / KPI | Progress to target | Measure + target |
1.2 Card Visual
11. Add Card visual22. Drag measure to "Fields"33. Format: Callout 28px Bold, Category 12px44. Background white with shadow1.3 Matrix (Pivot Table)
1Rows: [Region], [City]2Columns: [Year], [Quarter]3Values: [Total Revenue]4Features: Expand/collapse, Subtotals, Conditional formattingCheckpoint
15+ built-in visuals. Card = single KPI (28px bold). Matrix = pivot table (expand/collapse). Match visual type to data purpose — Bar (compare), Line (trend), Scatter (relationship)!
🧩 2. Custom Visuals
2.1 AppSource Marketplace
1Insert → More Visuals → From AppSource2 3Popular:4- Bullet Chart (Actual vs Target)5- Chiclet Slicer (Visual filter buttons)6- Word Cloud (Text analysis)7- Sankey (Flow visualization)8- Calendar (Date-based heatmap)9- Deneb (Vega-Lite custom charts)2.2 Top Custom Visuals
| Visual | Use Case | Free? |
|---|---|---|
| Bullet Chart | KPI vs target | Yes |
| Chiclet Slicer | Image/icon filters | Yes |
| Infographic Designer | Icon-based stats | Yes |
| Play Axis | Animation over time | Yes |
| Drill Down Choropleth | Interactive maps | Yes |
| Deneb | Full Vega-Lite integration | Yes |
2.3 Deneb (Vega-Lite)
1{2 "mark": {"type": "bar", "cornerRadiusEnd": 4},3 "encoding": {4 "x": {"field": "Category", "type": "nominal"},5 "y": {"field": "Revenue", "type": "quantitative"},6 "color": {"field": "Category"}7 }8}Deneb = power tool! Nếu Power BI built-in visuals không đủ, Deneb cho phép tạo bất kỳ chart nào bằng Vega-Lite spec. Free và rất flexible!
Checkpoint
AppSource = free custom visuals. Bullet Chart = actual vs target. Chiclet Slicer = visual buttons. Deneb = Vega-Lite cho unlimited customization!
🎨 3. Conditional Formatting
3.1 Background Color
1Format → Cell elements → Background color:2- Based on: Revenue measure3- Style: Gradient4 Min: #ffffff → Max: #1a73e83.2 Data Bars
1Format → Cell elements → Data bars:2- Positive: #34a853 (green)3- Negative: #ea4335 (red)4- Show bar only: False3.3 Icons
1Format → Cell elements → Icons:2- Style: Traffic lights / Arrows3- Rules:4 >= 0.10: Green up arrow5 >= 0.00: Yellow right arrow6 < 0.00: Red down arrow3.4 Rules-Based Formatting
1Revenue Color = 2 SWITCH(TRUE(),3 [YoY Growth] >= 0.10, "#34a853",4 [YoY Growth] >= 0, "#fbbc04",5 "#ea4335"6 )Conditional Formatting biến bảng boring thành insightful — data bars show magnitude, icons show status, colors show good/bad ngay lập tức!
Checkpoint
Background color = gradient cho magnitude. Data Bars = visual bars in cells. Icons = traffic lights/arrows cho status. Combine tất cả cho table siêu trực quan!
🔘 4. Bookmarks & Buttons
4.1 Bookmarks
11. View → Bookmarks pane → Add bookmark22. Set filters, hide/show visuals33. Name: "Sales View", "Profit View"4.2 Buttons
1Insert → Buttons:2- Back, Bookmark, Navigator, Q&A, Custom3Action Type: Bookmark → select destination4.3 Toggle Pattern
1"Show Detail / Show Chart" toggle:21. Create 2 visuals (chart + table) overlapping32. Bookmark 1: Chart visible, table hidden43. Bookmark 2: Table visible, chart hidden54. Button 1: "Show Details" → Bookmark 265. Button 2: "Show Chart" → Bookmark 1Bookmark + Button = interactive toggle — users switch giữa chart view và detail view. Rất impressive cho presentations và stakeholder dashboards!
Checkpoint
Bookmarks = saved states (filters + visibility). Buttons = trigger bookmarks. Toggle pattern = overlapping visuals + bookmark switching. Great cho presentations!
🎭 5. Themes & Formatting
5.1 Custom Theme
1{2 "name": "MinAI Theme",3 "dataColors": ["#1a73e8", "#34a853", "#ea4335", "#fbbc04"],4 "background": "#f8f9fa",5 "foreground": "#3c4043",6 "tableAccent": "#1a73e8"7}5.2 Page Settings
1Canvas: Custom 1280 x 720 (16:9)2Background: Color or Image5.3 Slicers
| Type | Best For |
|---|---|
| List | Category selection |
| Dropdown | Many categories |
| Between | Date/number range |
| Relative Date | Last 30 days, this month |
5.4 Sync Slicers
1View → Sync Slicers → Select pages to sync2→ 1 filter controls multiple pages!Checkpoint
Custom Theme = JSON file cho consistent design. Page: 1280x720 (16:9). Slicers: max 3-4 per page. Sync Slicers = 1 filter → multiple pages!
📋 Tổng kết
Kiến thức đã học
| Chủ đề | Nội dung chính | Tầm quan trọng |
|---|---|---|
| Built-in | 15+ visuals, Card, Matrix, Map | Foundation |
| Custom | AppSource, Deneb, Bullet, Chiclet | Extensibility |
| Conditional | Colors, Data Bars, Icons | Readability |
| Bookmarks | Save states, Toggle pattern | Interactivity |
| Themes | Custom JSON, Page settings, Slicers | Consistency |
Câu hỏi tự kiểm tra
- Custom Visuals từ AppSource cần chú ý gì?
- Conditional Formatting dùng trong trường hợp nào?
- Bookmarks tạo Toggle pattern thế nào?
- Custom Theme JSON cấu trúc ra sao?
Bài tiếp theo: Power BI Dashboards — Build production-ready dashboards và publish!
🎉 Tuyệt vời! Bạn đã biết cách custom visuals trong Power BI!
Nhớ: Theme + Bookmarks + Conditional Formatting = report đẹp và interactive hơn hẳn!
