Grafana 面板类型 #

面板概述 #

面板(Panel)是 Grafana 中最基本的可视化单元,用于展示来自数据源的数据。Grafana 提供了丰富的面板类型,满足不同的可视化需求。

text
┌─────────────────────────────────────────────────────────────┐
│                    面板类型概览                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  时间序列类:                                                │
│  ├── Time Series    时间序列图(推荐)                       │
│  ├── State Timeline 状态时间线                              │
│  └── Status History 状态历史                                │
│                                                             │
│  统计展示类:                                                │
│  ├── Stat           统计值                                  │
│  ├── Gauge          仪表盘                                  │
│  └── Bar Gauge      条形仪表                                │
│                                                             │
│  表格列表类:                                                │
│  ├── Table          表格                                    │
│  ├── Logs           日志                                    │
│  └── Trace          追踪                                    │
│                                                             │
│  图表类:                                                    │
│  ├── Bar Chart      柱状图                                  │
│  ├── Pie Chart      饼图                                    │
│  ├── Heatmap        热力图                                  │
│  └── Histogram      直方图                                  │
│                                                             │
│  地理类:                                                    │
│  └── Geomap         地理地图                                │
│                                                             │
│  其他:                                                      │
│  ├── Text           文本                                    │
│  ├── Dashboard List 仪表板列表                              │
│  └── Alert List     告警列表                                │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Time Series(时间序列图) #

时间序列图是 Grafana 最常用、最强大的可视化类型,用于展示随时间变化的数据。

基本配置 #

text
┌─────────────────────────────────────────────────────────────┐
│                    时间序列图配置                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Panel options:                                             │
│  ├── Title        面板标题                                  │
│  ├── Description  描述说明                                  │
│  └── Transparent  透明背景                                  │
│                                                             │
│  Query:                                                     │
│  ├── 数据源选择                                              │
│  ├── 查询语句                                                │
│  └── 查询选项(间隔、最大数据点)                            │
│                                                             │
│  Transform:                                                 │
│  └── 数据转换                                                │
│                                                             │
└─────────────────────────────────────────────────────────────┘

图表模式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    图表模式                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Line(折线图):                                            │
│  ┌─────────────────────────────────────────────────────┐   │
│  │     ╱╲                                               │   │
│  │    ╱  ╲    ╱╲                                        │   │
│  │   ╱    ╲  ╱  ╲                                       │   │
│  │  ╱      ╲╱    ╲                                      │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Area(面积图):                                            │
│  ┌─────────────────────────────────────────────────────┐   │
│  │     ████                                             │   │
│  │    ██████  ████                                      │   │
│  │   ██████████████                                     │   │
│  │  ████████████████                                    │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Bars(柱状图):                                            │
│  ┌─────────────────────────────────────────────────────┐   │
│  │      ██                                              │   │
│  │  ██  ██  ██                                          │   │
│  │  ██  ██  ██  ██                                      │   │
│  │  ██  ██  ██  ██                                      │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Points(点图):                                            │
│  ┌─────────────────────────────────────────────────────┐   │
│  │      •                                               │   │
│  │  •       •                                           │   │
│  │          •       •                                   │   │
│  │  •               •                                   │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

样式配置 #

yaml
Graph styles:
  Style: Lines / Bars / Points
  Line width: 1
  Fill opacity: 10
  Point size: 5
  Stacking: Normal / Percent
  Gradient mode: None / Opacity / Hue

图例配置 #

yaml
Legend:
  Visibility: Visible
  Mode: List / Table
  Placement: Bottom / Right
  Values: Last / First / Min / Max / Mean / Total
  Width: 100

轴配置 #

yaml
Axis:
  Placement: Auto / Left / Right / Hidden
  Label: 轴标签
  Unit: 单位
  Min: 最小值
  Max: 最大值
  Scale: Linear / Log2 / Log10

示例查询 #

promql
rate(cpu_usage_total[5m])

node_memory_MemAvailable_bytes / 1024 / 1024 / 1024

sum by (instance) (rate(http_requests_total[5m]))

Stat(统计值面板) #

Stat 面板用于展示单个或多个统计值,适合展示关键指标。

显示模式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    Stat 显示模式                              │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Auto(自动):                                              │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  CPU Usage                                           │   │
│  │  75.5%                                               │   │
│  │  ▲ 5.2%                                              │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Color(彩色背景):                                         │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  ████████████████████████████████████████████████   │   │
│  │  CPU Usage                                           │   │
│  │  75.5%                                               │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Value and name(值和名称):                                │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  75.5%                                               │   │
│  │  CPU Usage                                           │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  None(仅值):                                              │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  75.5%                                               │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Stat:
  Orientation: Auto / Horizontal / Vertical
  Text alignment: Auto / Center
  Reduce calc: Last / First / Mean / Min / Max / Total / Count
  Color mode: Value / Background
  Graph mode: None / Area
  Justify mode: Auto / Center

颜色阈值 #

text
┌─────────────────────────────────────────────────────────────┐
│                    颜色阈值配置                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Thresholds:                                                │
│  ├── 0   → green  (正常)                                    │
│  ├── 70  → yellow (警告)                                    │
│  └── 90  → red    (危险)                                    │
│                                                             │
│  效果:                                                     │
│  ├── 0-70:   绿色                                           │
│  ├── 70-90:  黄色                                           │
│  └── 90-100: 红色                                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Gauge(仪表盘) #

Gauge 面板以仪表盘形式展示单个值,直观显示指标在范围内的位置。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    Gauge 显示样式                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Basic(基础):                                              │
│  ┌─────────────────────────────────────────────────────┐   │
│  │           ╭───────╮                                  │   │
│  │         ╭─┤       ├─╮                                │   │
│  │        │  │   75% │  │                               │   │
│  │         ╰─┤       ├─╯                                │   │
│  │           ╰───────╯                                  │   │
│  │            CPU Usage                                 │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Gradient(渐变):                                          │
│  ┌─────────────────────────────────────────────────────┐   │
│  │           ╭───────╮                                  │   │
│  │         ╭─┤███████├─╮  (渐变色填充)                  │   │
│  │        │██│  75%  │██│                               │   │
│  │         ╰─┤███████├─╯                                │   │
│  │           ╰───────╯                                  │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Gauge:
  Orientation: Auto / Horizontal
  Show threshold labels: true / false
  Show threshold markers: true / false
  Min: 0
  Max: 100
  Unit: percent

Bar Gauge(条形仪表) #

Bar Gauge 以条形图形式展示多个值,适合对比多个指标。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    Bar Gauge 显示样式                         │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Horizontal(水平):                                        │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  CPU     ████████████████████░░░░░░░░░░  75%        │   │
│  │  Memory  ████████████████████████░░░░░░  85%        │   │
│  │  Disk    ████████████████░░░░░░░░░░░░░░  60%        │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Vertical(垂直):                                          │
│  ┌─────────────────────────────────────────────────────┐   │
│  │   CPU      Memory    Disk                           │   │
│  │   ██       ████      ██                             │   │
│  │   ██       ████      ██                             │   │
│  │   ████     ████      ████                           │   │
│  │   ████     ██████    ████                           │   │
│  │   ██████   ██████    ██████                         │   │
│  │   75%      85%       60%                            │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Bar Gauge:
  Orientation: Horizontal / Vertical
  Display mode: Gradient / Basic
  Min: 0
  Max: 100
  Show unfilled area: true / false

Table(表格) #

Table 面板以表格形式展示数据,适合展示结构化数据。

基本配置 #

text
┌─────────────────────────────────────────────────────────────┐
│                    表格面板                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │ Server    │ CPU  │ Memory │ Status  │ Last Check   │   │
│  ├───────────┼──────┼────────┼─────────┼──────────────┤   │
│  │ server-01 │ 75%  │ 85%    │ ● OK    │ 2 min ago    │   │
│  │ server-02 │ 45%  │ 60%    │ ● OK    │ 1 min ago    │   │
│  │ server-03 │ 92%  │ 95%    │ ● WARN  │ 30 sec ago   │   │
│  │ server-04 │ 10%  │ 25%    │ ● OK    │ 1 min ago    │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

列配置 #

yaml
Column:
  Type: Auto / Number / String / Date
  Width: auto / 固定宽度
  Align: left / center / right
  Filter: true / false
  Sort: none / asc / desc

单元格显示模式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    单元格显示模式                             │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Color text(彩色文字):                                    │
│  │ 75%  │  (文字带颜色)                                     │
│                                                             │
│  Color background(彩色背景):                              │
│  │█████│  (背景带颜色)                                      │
│                                                             │
│  Gauge(仪表):                                             │
│  │███░░░│  (进度条)                                         │
│                                                             │
│  JSON View(JSON 视图):                                    │
│  │{...} │  (格式化 JSON)                                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

数据链接 #

yaml
Data links:
  - Title: View Details
    URL: /d/server-details?server=${__data.fields.server}
  - Title: SSH Connect
    URL: ssh://${__data.fields.server}

Bar Chart(柱状图) #

Bar Chart 用于展示分类数据的对比。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    柱状图样式                                 │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Vertical(垂直柱状图):                                    │
│  ┌─────────────────────────────────────────────────────┐   │
│  │       ██                                             │   │
│  │  ██   ██   ██                                        │   │
│  │  ██   ██   ██   ██                                   │   │
│  │  ██   ██   ██   ██   ██                              │   │
│  │ Mon  Tue  Wed  Thu  Fri                              │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Horizontal(水平柱状图):                                  │
│  ┌─────────────────────────────────────────────────────┐   │
│  │ Mon  ████████████████████                           │   │
│  │ Tue  ██████████████████████████                     │   │
│  │ Wed  ██████████████████                             │   │
│  │ Thu  ██████████████████████████████                 │   │
│  │ Fri  ████████████████████████                       │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Bar Chart:
  Orientation: Vertical / Horizontal
  Group width: 0.7
  Bar width: 0.97
  Show values: Auto / Always / Never
  Stacking: Normal / Percent

Pie Chart(饼图) #

Pie Chart 用于展示数据的占比分布。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    饼图样式                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Pie(饼图):                                               │
│  ┌─────────────────────────────────────────────────────┐   │
│  │              ╭───────╮                               │   │
│  │           ╭──┤       ├──╮                           │   │
│  │          │   │  35%  │   │                           │   │
│  │          │  ╭┴───────┴╮ │                           │   │
│  │          │  │    25%  │ │                           │   │
│  │           ╰─┤────────├─╯                            │   │
│  │             │  40%   │                              │   │
│  │             ╰────────╯                              │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  Donut(环形图):                                           │
│  ┌─────────────────────────────────────────────────────┐   │
│  │              ╭───────╮                               │   │
│  │           ╭──┤       ├──╮                           │   │
│  │          │   │       │   │                           │   │
│  │          │  ╭┴───────┴╮ │                           │   │
│  │          │  │  Total  │ │                           │   │
│  │           ╰─┤  100%  ├─╯                            │   │
│  │             │        │                              │   │
│  │             ╰────────╯                              │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Pie Chart:
  Show legend: true / false
  Legend position: Right / Bottom
  Pie type: Pie / Donut
  Show values: true / false

Heatmap(热力图) #

Heatmap 用于展示数据的密度分布。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    热力图样式                                 │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  100 │  ░░  ▓▓  ██  ██  ▓▓  ░░  ░░                  │   │
│  │   80 │  ░░  ▓▓  ██  ██  ██  ▓▓  ░░                  │   │
│  │   60 │  ░░  ▓▓  ▓▓  ██  ██  ▓▓  ▓▓                  │   │
│  │   40 │  ░░  ░░  ▓▓  ▓▓  ▓▓  ▓▓  ▓▓                  │   │
│  │   20 │  ░░  ░░  ░░  ▓▓  ▓▓  ▓▓  ░░                  │   │
│  │    0 └──────────────────────────────────────────────│   │
│  │       00:00  04:00  08:00  12:00  16:00  20:00      │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  颜色深浅表示数据密度                                        │
│  ░░ 低密度  ▓▓ 中密度  ██ 高密度                            │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Heatmap:
  Data format: Time series buckets
  Y Axis: Count / Custom
  Color scheme: Spectral / Blues / Reds / Greens
  Show values: true / false

Geomap(地理地图) #

Geomap 用于展示地理位置相关的数据。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    地理地图样式                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │                                                      │   │
│  │        ● Beijing                                     │   │
│  │                    ● Shanghai                        │   │
│  │                                                     │   │
│  │     ● Chengdu                        ● Guangzhou     │   │
│  │                                                      │   │
│  │  ● Urumqi                                           │   │
│  │                                                      │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  点的大小和颜色可以表示数值大小                               │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Geomap:
  Map layer: OpenStreetMap / CartoDB
  View: World / Custom
  Center: [longitude, latitude]
  Zoom: 1-18
  Marker size: Fixed / By value

Logs(日志面板) #

Logs 面板用于展示日志数据。

显示样式 #

text
┌─────────────────────────────────────────────────────────────┐
│                    日志面板样式                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │ 2024-01-15 10:23:45  INFO  Server started           │   │
│  │ 2024-01-15 10:23:46  INFO  Loading configuration    │   │
│  │ 2024-01-15 10:23:47  WARN  Cache miss detected      │   │
│  │ 2024-01-15 10:23:48  ERROR Connection failed        │   │
│  │ 2024-01-15 10:23:49  INFO  Retrying connection      │   │
│  │ 2024-01-15 10:23:50  INFO  Connected successfully   │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  不同日志级别显示不同颜色                                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

配置选项 #

yaml
Logs:
  Show time: true / false
  Show labels: true / false
  Sort order: Ascending / Descending
  Deduplication: None / Exact / Numbers

Text(文本面板) #

Text 面板用于展示静态文本或 Markdown 内容。

使用场景 #

text
┌─────────────────────────────────────────────────────────────┐
│                    文本面板使用场景                           │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  1. 仪表板说明文档                                          │
│  2. 操作指引                                                │
│  3. 重要提示                                                │
│  4. Markdown 格式化内容                                     │
│  5. 嵌入 HTML 内容                                          │
│                                                             │
└─────────────────────────────────────────────────────────────┘

内容模式 #

yaml
Text:
  Mode: Markdown / HTML / Code

Markdown 示例:

markdown
# Server Monitoring Dashboard

## Overview
This dashboard monitors server health metrics.

## Metrics
- **CPU Usage**: Should be below 80%
- **Memory**: Should be below 90%
- **Disk**: Should be below 85%

## Contact
- On-call: support@example.com

面板通用配置 #

查询选项 #

text
┌─────────────────────────────────────────────────────────────┐
│                    查询选项                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Max data points:                                           │
│  ├── 最大返回数据点数                                       │
│  ├── 默认根据面板宽度自动计算                               │
│  └── 可手动设置                                             │
│                                                             │
│  Min interval:                                              │
│  ├── 最小查询间隔                                           │
│  └── 防止查询过于频繁                                       │
│                                                             │
│  Relative time:                                             │
│  ├── 覆盖仪表板时间范围                                     │
│  └── 例如:now-1h, now-24h                                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘

数据转换 #

text
┌─────────────────────────────────────────────────────────────┐
│                    数据转换类型                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Add field from calculation:                                │
│  └── 基于现有字段计算新字段                                  │
│                                                             │
│  Filter by name:                                           │
│  └── 按名称过滤字段                                         │
│                                                             │
│  Filter data by value:                                     │
│  └── 按值过滤数据                                           │
│                                                             │
│  Organize fields:                                          │
│  └── 组织字段(重命名、隐藏、排序)                          │
│                                                             │
│  Partition by values:                                      │
│  └── 按值分区                                               │
│                                                             │
│  Rename by regex:                                          │
│  └── 使用正则表达式重命名                                   │
│                                                             │
│  Series to rows:                                           │
│  └── 将序列转换为行                                         │
│                                                             │
│  Merge:                                                    │
│  └── 合并多个查询结果                                       │
│                                                             │
└─────────────────────────────────────────────────────────────┘

值映射 #

yaml
Value mappings:
  - Type: Value
    Value: 0
    Result text: Offline
    Color: red
  - Type: Value
    Value: 1
    Result text: Online
    Color: green
  - Type: Range
    From: 0
    To: 50
    Result text: Low
    Color: yellow

值格式化 #

text
┌─────────────────────────────────────────────────────────────┐
│                    单位类型                                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  数据存储:                                                  │
│  bytes, KB, MB, GB, TB, PB                                  │
│                                                             │
│  时间:                                                      │
│  seconds, minutes, hours, days                              │
│                                                             │
│  百分比:                                                    │
│  percent (0-100), percentunit (0-1)                         │
│                                                             │
│  网络速度:                                                  │
│  bps, Kbps, Mbps, Gbps                                      │
│                                                             │
│  温度:                                                      │
│  celsius, fahrenheit                                        │
│                                                             │
│  货币:                                                      │
│  currency USD, currency EUR, currency CNY                   │
│                                                             │
│  自定义:                                                    │
│  自定义单位后缀                                              │
│                                                             │
└─────────────────────────────────────────────────────────────┘

面板最佳实践 #

选择合适的面板类型 #

text
┌─────────────────────────────────────────────────────────────┐
│                    面板选择指南                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  时间趋势分析 → Time Series                                 │
│  单个关键指标 → Stat / Gauge                                │
│  多指标对比   → Bar Gauge / Bar Chart                       │
│  占比分析     → Pie Chart                                   │
│  数据密度     → Heatmap                                     │
│  详细数据     → Table                                       │
│  日志查看     → Logs                                        │
│  地理数据     → Geomap                                      │
│  状态展示     → State Timeline                              │
│                                                             │
└─────────────────────────────────────────────────────────────┘

颜色使用建议 #

text
┌─────────────────────────────────────────────────────────────┐
│                    颜色使用建议                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  状态颜色:                                                  │
│  ├── 绿色:正常、健康                                       │
│  ├── 黄色:警告、注意                                       │
│  ├── 红色:错误、危险                                       │
│  └── 蓝色:信息、中性                                       │
│                                                             │
│  对比颜色:                                                  │
│  ├── 使用对比色区分不同序列                                 │
│  └── 避免过多颜色造成混乱                                   │
│                                                             │
│  一致性:                                                    │
│  └── 同一仪表板使用统一的颜色方案                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

下一步 #

掌握了面板类型后,接下来学习 数据源配置,了解如何连接各种数据源!

最后更新:2026-03-29