From c82b47d18f1367b7850e10521f55dcbce5a3cffa Mon Sep 17 00:00:00 2001 From: "Lingchen.Yang" <97349759+haoyu2022@users.noreply.github.com> Date: Fri, 30 Aug 2024 10:15:09 +0800 Subject: [PATCH] =?UTF-8?q?[Docathon][Add=20API=20Legend=20No.18]=E4=B8=BA?= =?UTF-8?q?roll=20API=20=E6=B7=BB=E5=8A=A0=E6=8F=92=E5=9B=BE=20(#6810)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Modify the roll API documentation * fix document * update * update and fix roll_cn.rst --- docs/api/paddle/roll_cn.rst | 11 +++++++++++ docs/images/api_legend/roll.png | Bin 0 -> 33807 bytes 2 files changed, 11 insertions(+) create mode 100644 docs/images/api_legend/roll.png diff --git a/docs/api/paddle/roll_cn.rst b/docs/api/paddle/roll_cn.rst index 75c3e121fb5..352ccc581c9 100644 --- a/docs/api/paddle/roll_cn.rst +++ b/docs/api/paddle/roll_cn.rst @@ -18,7 +18,18 @@ roll - **axis** (int|list|tuple,可选) – 滚动轴。默认值为 None。 - **name** (str,可选) - 具体用法请参见 :ref:`api_guide_Name`,一般无需设置,默认值为 None。 +下图展示了一个形状为 ``[[1,2,3],[4,5,6],[7,8,9]]`` 的二维张量通过 ``roll`` 操作转变为形状不同的张量。 +.. image:: ../../images/api_legend/roll.png + :width: 700 + :align: center + :alt: 图例 + +- 当 ``axis = None`` 时,张量会被展平成一维,然后进行循环滚动,再恢复原状 +- 当 ``axis=0`` 时,张量沿着 0 轴方向进行循环滚动 +- 当 ``axis=1`` 时,张量沿着 1 轴方向进行循环滚动 + +由于 ``axis`` 参数的取值不同,对应的滚动操作也不同,由图可以看到每个元素在不同滚动操作下的位置变化。 返回 ::::::::: diff --git a/docs/images/api_legend/roll.png b/docs/images/api_legend/roll.png new file mode 100644 index 0000000000000000000000000000000000000000..be7a59c2f1b24f15c4d7b99e0a4560da683bc227 GIT binary patch literal 33807 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 F{SSuy51jx2 literal 0 HcmV?d00001