pl-matrix-component-input元件¶
pl-matrix-component-input 元素显示输入字段网格
与 answers-name 中存储的变量形状相同
(answers-name 中只能存储实数的二维数组)。
样品元素¶

question.html
<pl-matrix-component-input answers-name="matrixA" label="$A=$"></pl-matrix-component-input>
server.py
import prairielearn as pl
import numpy as np
def generate(data):
# Generate a random 3x3 matrix
mat = np.random.random((3, 3))
# Answer to each matrix entry converted to JSON
data["correct_answers"]["matrixA"] = pl.to_json(mat)
定制¶
| 属性 | 类型 | 默认 | 描述 |
|---|---|---|---|
allow-blank |
布尔 | 假 | 是否允许空输入框。默认情况下,至少有一个空输入框的矩阵将不会被评分(格式无效)。 |
allow-feedback |
布尔 | "allow-partial-credit" |
是否允许反馈指示哪些矩阵分量不正确。 allow-feedback 的默认值为 "allow-partial-credit" 的值。 |
allow-fractions |
布尔 | 真实 | 是否允许答案表示为格式为 a/b 的有理数。 |
allow-partial-credit |
布尔 | 假 | 是否允许对每个正确的矩阵分量进行积分。默认情况下,仅当所有矩阵分量都正确时,变量才会被评为正确。 |
answers-name |
字符串 | — | 用于存储数据的变量名称。请注意,该属性在问题中必须是唯一的,即该属性的值不应在问题中重复。 |
aria-label |
字符串 | — | 输入的可访问标签。 |
atol |
数量 | 1e-8 | comparison="relabs" 的绝对公差。 |
blank-value |
字符串 | 0 (zero) | 如果组件留空,则用作每个单独组件的答案的值。仅当 allow-blank 为 true 时适用。必须遵循与预期用户输入相同的格式(例如,如果允许,则为分数等)。 |
columns |
整数 | — | 矩阵中的列数。当 data["correct_answers"] 中没有提供正确答案时,必填(且必须至少为 1);否则大小是从正确答案推断出来的。 |
comparison |
"relabs"、"sigfig" 或 "decdig" |
"relabs" |
如何评分。 "relabs" 使用相对 (rtol) 和绝对 (atol) 公差。 "sigfig" 和 "decdig" 使用 digits 有效数字或小数位。 |
digits |
整数 | 2 | comparison="sigfig" 或 comparison="decdig" 必须正确的位数。 |
label |
字符串 | — | 显示在输入框之前的前缀(例如,label="$F =$")。 |
rows |
整数 | — | 矩阵中的行数。当 data["correct_answers"] 中没有提供正确答案时,必填(且必须至少为 1);否则大小是从正确答案推断出来的。 |
rtol |
数量 | 1e-2 | comparison="relabs" 的相对公差。 |
suffix |
字符串 | — | 显示在输入框之后的后缀(例如,suffix="$\rm m/s^2$")。 |
weight |
整数 | 1 | 计算元素的加权平均分数时使用的权重。 |
细节¶
仅当输入所有矩阵分量时才会对问题评分,除非启用 allow-blank 属性。
示例实现¶
- [元素/矩阵组件输入]