简体中文
English 简体中文 繁體中文
Methodox 首页

图表

饼图、条形图、折线图、散点图和雷达图是绘图框架自身的图表,以文本形式编写:每一行数据由一个名称、一个冒号和它的数字组成。可以把多张图表 —— 或任何其他 Dhole 示意图 —— 写在同一段文本中,彼此之间用一行三个短横线分隔,详见语言页面。

在任何语言环境下,数字都以点号作为小数点,数字之间用逗号或空格分隔。如果图表中某一行的名称是某个设置名的笔误,且其值中不含数字 —— 例如 titel: Sales —— Dhole 会指出这是一个拼错的设置,而不会把它当作数据读取。

饼图和环形图

pie Where the day goes
Sleep: 8
Work: 8
Family: 4
Reading: 2
Errands: 2

上面的文本:从 Sleep 到 Errands 的五个扇区,最大的在前,每个都标有其占比

每一行是一个扇区:一个名称、一个冒号和数量。Mermaid 的 "Name" : 30 和早期 Dhole 的 Slice: Name, 30 写法也能读取。不大于零的扇区不会绘制,并会给出警告。

设置 别名 值
hole donut on、off,或中心孔占饼图的比例:0.5、50%
labels show, slices 每个扇区显示的内容:percent(默认)、value、name、name and percent、none
order sort size,最大的在前(默认),或 written(按书写顺序)
centre center, middle, total 中心孔中的文字

用 donut、doughnut 或 ring 代替 pie,图表一开始就带有中心孔:

donut Energy at home
centre: 4,200 kWh
Heating: 52
Water: 18
Kitchen: 12
Lights: 8
Other: 10

上面的文本:由五个扇区组成的圆环,中间写着 4,200 kWh

条形图

bar Sales by region
labels: North, South, East, West
y axis: Units
2025: 42, 31, 27, 18
2026: 45, 28, 34, 22

上面的文本:四个地区各有两年的条形并排显示

使用 labels 时,每一行是一个系列 —— 一个名称、一个冒号,以及对应每个标签的一个值 —— 各系列并排显示。不使用标签时,每一行是一个条形:North: 42。没有标签而包含多个数字的行,则沿坐标轴按 1、2、3 计数。

设置 别名 值
labels categories, x labels, columns 每个值所属的类别,以逗号分隔
x axis, y axis x title, horizontal axis, y title, vertical axis 坐标轴的标题
range y range, scale 数值轴的范围:0..100
stack stacked on 表示堆叠各系列,percent 表示堆叠至百分之百,off
direction orientation, bars up(默认),或 right 表示横向条形
values value labels, numbers on 表示在每个条形上标出其值
bar How people travel to work
labels: City, Suburbs, Villages
direction: right
stack: percent
values: on
Car: 20, 55, 70
Bus: 35, 25, 15
Bicycle: 25, 12, 10
Foot: 20, 8, 5

上面的文本:三个横向条形,每个分为四段,合计为百分之百

折线图

line A week of weather
labels: Mon, Tue, Wed, Thu, Fri, Sat, Sun
y axis: Degrees
points: on
Low: 3, 5, 4, 6, 7, 5, 4
High: 9, 11, 10, 12, 14, 13, 11

上面的文本:一周中每天的最高和最低气温两条折线,每个值都有标记

每一行是一个系列,对应每个标签一个值;没有标签时,各值按 1、2、3 计数。

设置 别名 值
labels, x axis, y axis, range 与条形图相同
shape curve, lines straight(默认)、smooth 或 step
points markers, dots on 表示标记每个值
area fill, filled on 表示填充每条线下方的区域
stack stacked on 表示堆叠填充区域

散点图

xy Height and weight
x axis: Height (cm)
y axis: Weight (kg)
trend: on
Team A: (160, 55), (165, 61), (170, 66), (175, 70), (180, 79), (185, 84)
Team B: (150, 48), (158, 53), (163, 60), (171, 63), (178, 71)

上面的文本:两支队伍的数据点,每支都有一条以其颜色绘制的拟合直线

每一行是一个由数据点组成的系列,每个点是括号中的一对数。只有一个点并有自己名称的行 —— Rome: (12.5, 41.9) —— 是一个带标签的点,因此几个具名地点可以绘制成一张名称地图。仅含两个数字的行是一个点;早期 Dhole 的 X: … 和 Y: … 两行会被读作一个系列。

设置 别名 值
x axis, y axis 坐标轴的标题
x range, range 坐标轴的范围,range 指纵轴
trend fit, trend line on 表示为每个系列拟合一条直线,使用该系列的颜色
lines connect, joined on 表示连接每个系列的各点

雷达图

radar Two phones
labels: Battery, Camera, Screen, Price, Weight
Phone A: 8, 6, 7, 5, 9
Phone B: 6, 9, 8, 4, 6

上面的文本:两款手机在五条辐射轴上的评分,各自为一个填充形状

labels(也可写作 spokes、axes)为各辐射轴命名,每一行是一个对象,对应每条辐射轴一个值。range 设置辐射轴的范围。

颜色

在系列名称后的方括号中写上颜色或角色,即可为该系列着色:2026 [orange]: 45, 28, 34, 22。其他系列按顺序使用主题的调色板。

不匹配的值

值的数量多于或少于标签数量的系列、单值行与多值行混用,以及不是数字的数字,都会连同所在行一起被指出;图表的其余部分照常绘制。