alchaincyf/huashu-report

huashu-report

做机构级研究报告与学术论文——行业报告、白皮书、年度调研、数据洞察、arXiv论文,也含16:9咨询deck型报告(一页一结论)。定结构、写发现、建图表视觉系统。规范提炼自2026年顶级机构报告实测。单篇文章、纯演示PPT不适用(走design/slides)。

Voir la source
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

报告写作

你是谁

不是「把资料整理成文档的人」。一份能被引用的报告,背后至少四个角色:

研究员做三件事,缺一件报告就掉一个档次:定口径(样本怎么来的、N 是多少、哪些被排除了)、 给机制(数据说了「是什么」,机制回答「为什么会这样」)、 定位文献(相对既有研究,这个发现是印证、是修正,还是揭示了既有框架没建模的维度)。 只做第一件,交出去的是资料汇编;三件都做,才是研究。

编辑决定读者读到第 3 页时应该已经知道什么。他砍掉一切「因为我们查到了所以写进去」的内容, 也砍掉一切关于「我们是怎么做的」的自我叙事。 信息设计师建立那套让 60 页保持一致的系统——标题层级、图表编号、数据源行的格式。读者不会注意到它,但它一旦崩了,报告就显得业余。 数据可视化师决定这个数字该是柱、是点、还是一句话。他的判据不是「哪种好看」,是「读者要拿它比什么」。

依次成为他们四个。跳过任何一个,产出就缺一整层。

最常被跳过的是研究员的后两件事。 数字都对、口径都标了、图表都漂亮, 但通篇只有「谁说了什么」,没有「这些合起来说明什么机制」—— 这样的报告同行读完会说「资料很全」,然后就没有然后了。 详见 references/研究深度.md

开工前先回答三个问题

① 读者拿它干什么? 这一个问题决定后面所有事。

读者要报告原型特征
引用你的数字学术型竖版、方法论透明、图表编号 Figure、预先反驳自己
拿去开会说服人咨询 deck 型横版 16:9、一页一结论、标题就是结论句
理解一个群体调查型竖版双栏、问卷原题随图、大数字视觉锚
查具体数据研报型竖版、Exhibit 编号、表格密度高、中性描述
同行评审、投 arXiv论文型英文、LaTeX、IMRaD、contributions 显式列出
理解一个领域并据此行动(无背景)科普型三幕骨架、场景开篇、口径搬进侧栏、结尾交付工具箱

论文型换生产轨道(LaTeX 不是 HTML),且渠道有能一票否决选题的硬约束—— 动手前必读 `references/论文.md`

科普型和学术型的差别不在严谨度,在叙述骨架—— 数字全对、口径全标、局限性单独成节,读者读三页就放下,这是它最常见的失败。 动手前必读 `references/科普.md`,那里有六个可检查"做没做"的承重手法。 判据只有一句:读者读到第三页会不会继续读。

选错原型是最贵的错误——把要被引用的东西做成 deck,没人能引;把要开会用的做成 60 页学术报告,没人会读。

② 这份报告的一句话是什么? 写下来。如果写不出一句读者会复述给别人的话,说明还没有报告,只有素材。

③ 有没有外部基准? 只有内部对比(这条比那条好、这季比上季强)的报告是半成品——读者读完仍不知道该不该行动,因为他不知道行业水平在哪。能查就去查,查不到就在方法论里明说缺了它。

五条硬规矩

每个数字都要有分母。 "多数企业正在部署 agent" 是废话;"951 家企业里 7% 跑通全自主 agent(Bain, 2026)" 是数据。任何百分比后面没有 N,读者就没法判断它是不是噪声。

图表标题写结论,不写主题。 ❌「按职能划分的招聘计划」 ✅「研发、销售、产品团队预计扩张,客服和 G&A 预计收缩」。唯一例外是研报型——查数的读者要中性描述。

预先反驳自己。 结论段之后专门写一段:这个发现可能被什么替代解释推翻,你排除了哪些,还剩哪些没排除。Stanford 那份最硬的报告用整整四句话说明自己"不是因果估计,只是描述性指标"——主动降级结论反而让它成了所有人引用的锚点。

附录是参考文献表,不是数据表的转印。 一条来源一行,同一份来源被二十个数字引用也只出现一次—— 附录的长度跟来源数走,不跟数据点数走。口径写在用得到它的那一页(正文括号、图注的 N、侧栏), 完整数据表随交付物给文件,不排进正文页。体量闸:附录不超过正文的 10%,超了就是把工作过程 当成了交付物。做法与判据见 references/结构骨架.md「附录放什么」。

报告里不写「我是怎么做的」。 「下载环节踩了个坑」「脚本一开始抓错了文件」属于工作日志,不属于研究报告。判据:把这句删掉,读者对结论的判断会不会变?不变就删。样本框、纳入排除标准、口径统一规则是方法论,必须写;工具实现和中间故障是工程记录,不写。

工作顺序不能颠倒

① 定原型和一句话 → ② 建数据表 → ③ 写正文 → ④ 补机制与文献定位 → ⑤ 做图 → ⑥ 渲染逐页自检

④不能省。 只做到③,交出去的是资料汇编——数字全对、口径全标,同行读完说一句「资料很全」就没有然后了。 研究员的增值在「为什么会这样」和「相对既有研究这个发现在什么位置」。

②必须在③之前。 先建数据表,写正文时每句话都有据可依; 反过来先写正文再补数据,一定会出现「这句很顺,但我不确定那个数字的口径」—— 到那一步再回头查,通常的结果是把这句留着不查。

数据表里每个数字带口径、样本量、出处。口径写不出一句完整的话,这个数字就不能用。

详细规范

按需读,不要全部载入:

  • references/结构骨架.md — 四种原型的完整组件清单、目录怎么写、方法论页放什么、附录放什么、篇幅基线
  • references/科普.md面向大众的长篇科普必读:三幕骨架、六个承重手法、

严谨性怎么搬家而不是打折、以及为什么模仿某位科普作家的声音一定会失败

  • references/研究深度.md写之前读这个:机制分析、文献定位、分析层次、报告里不写什么
  • references/行文.md — 摘要、发现、图注、方法论的具体句式;可信度从哪来
  • references/视觉系统.md — 版式、配色、字号、行距、字体、封面、页眉页脚、表格排版的量化规范
  • references/视觉方向库.md定视觉调性时读这个:9 个成体系的视觉方向 + 版式动作库;挑 2–3 个候选摊给用户选,连续两份报告不用同一个方向
  • references/图表模式库.md — 13 个图表做法与选型速查,含会改变读者结论的三个陷阱
  • references/生产流水线.md动手做之前读这个:版式基座契约、三文件架构、分页容器、渲染与自检、

十一个具体的坑。超过 100 页、或者要把章节分给多个 agent 写,另读它末尾两节—— 「规则该放在哪一层」和「上百页量级:额外的五件事」。40 页的规范在那个量级上不够用, 而不够用的方式是静默的:没有人违规,一致性自己漂走

  • references/论文.md — 论文型全流程:arXiv 渠道硬约束、写法差异、LaTeX 流水线、引用纪律
  • references/实证基线.md — 41 份报告的量化统计,规范的出处(样本清单与解剖数据在 corpus/

三个 assets 直接复制到项目里改配置用,不要重造:assets/base.css(承重排版基座, A4/全出血两种页面模式,字号行距只改变量)、assets/chart.py(8 种图型的内联 SVG 库, 支持负值)、assets/render.py(渲染 + 目录页码自动回填 + 机械自检 + 逐页留白几何实测)。

交付前自检

内容层

  • [ ] 每个百分比旁边有 N,或本页有统一的 N 说明
  • [ ] 每张图有:结论式标题、数据源行、样本量;调研图另加问卷原题
  • [ ] 数据源区分了「谁采的数」和「谁做的分析/图」
  • [ ] 正文里区分了「被引报告的数字」和「我的判断」(前者带出处标记,后者不带)
  • [ ] 摘要能独立读懂,不依赖正文
  • [ ] 有一段专门讲局限性与替代解释,并诚实说出排除掉的那些
  • [ ] 转引值(被引报告引的他人数据)标注为转引,不当独立证据用
  • [ ] 除了「谁说了什么数字」,有没有至少一处「为什么会这样」的机制分析(且以竞争假说形式给出)
  • [ ] 有没有把发现放回文献脉络:印证了什么既有判断 / 修正了什么 / 揭示了什么既有框架没建模的维度
  • [ ] 跨源对比的数字在同一个分析层次上(任务 / 岗位 / 组织 / 宏观),不在的话已说明
  • [ ] 通篇没有一句在讲「我是怎么做出这份报告的」
  • [ ] 没有「怎么读这份报告」这类使用说明
  • [ ] 局限性写的是证据有效性,不是工具故障
  • [ ] 结论章有超出摘要的内容(否则说明只做了汇编)
  • [ ] 附录是文献表不是数据表转印,且总长不超过正文的 10%
  • [ ] 数据表的 `verified` 位有人负责,而且负责的规则是开工时定的——

调研 agent 只填 value/basis/src、从不置 verified,于是「交付前清零⚠未核」 这条闸永远清不了。开工就要定:谁在什么条件下有权置 true。 核到什么程度是交付物随附的数据表文件里的事,不靠在附录里逐条挂红字解决

排版层

机械能查的(assets/render.py 自动跑):图表编号连续且格式统一、 目录页码与实际一致、没有内容极少的页、没有占位符残留、 每页四边留白实测达标(几何自检:逐页渲成灰度图量 mm 数,内容顶格、 边距被挤掉直接报页码;全出血页自动跳过并提示肉眼确认; 同时列出「下半页大面积留白」候选页)。

章数够多时还会自动跑三项一致性检查longdoc_check):各章加粗处数、 各章篇幅方差、中文标点后的残留空格。这三条在一个人写的 40 页报告里不会出问题, 一旦分章外包就必漂——它们都是「每个写作者各自记住一条规则」型的约束, 而记忆不跨 agent 共享。详见 references/生产流水线.md「规则该放在哪一层」。

眼睛才能查的——必须逐页看,不能抽检:

bash
pdftoppm -png -r 70 报告.pdf 自检/p
  • [ ] 列缝粘连:相邻列内容贴死,读起来像「84%尚未围绕…」这种连成一句的假句子
  • [ ] 负值画成零高度:「下降 11%」和「没有变化」在图上长得一样
  • [ ] 图表标注被版心切掉:「626,155磅(成千上万次训练)」印成「…成千上万次」——

凡是给文字预留固定空间的写法都会这样,而 SVG 不报溢出

  • [ ] 居中标注在最边上那个点被切(时间轴、折线末端标注最容易)
  • [ ] 视觉锚数字被拦腰折断:「626,15 / 5磅」
  • [ ] 双列组件里某一列塌成一个字宽、整段竖排flex:1 + 对侧无 min-width
  • [ ] Y 轴不从零开始,把小差异画成大差异
  • [ ] 图表容器远大于内容,页面下半空着
  • [ ] 标题落在页底、内容翻到下一页(机械自检查不出来——那页确实有内容,只是只有五个字)
  • [ ] 章末只剩一两句话独占一整页(孤儿段。CSS 里对末两段 break-before: avoid
  • [ ] 长表跨页时表头没有重复(读者读不了第二页)
  • [ ] 章内出现整页留白(章末留白正常,章内留白说明分页容器切得太碎)
  • [ ] 内容跨页时页眉丢失
  • [ ] 正文颜色是近黑;品牌色只出现在图表和强调处
抽检对排版缺陷无效。 排版缺陷不是均匀分布的,它集中在最复杂的那几页—— 长表格、宽图表、附录。上一次就是抽看了四页,漏掉了附录里的列粘连,交付后才被指出来。 空白页不用手筛——render.py 几何自检会把「下半页墨水量异常低」的页码列出来, 逐页看的时候先看那几页。 300 页以上换个看法,但仍然是逐页。 把 12 页拼成一张检查表(每页缩到 430px 宽, 四列三行,每格标页码),30 张图扫完全书;上面那些缺陷在这个尺度上全都看得见。 扫到可疑的再单独开全尺寸那一页。每一页都进过眼睛,只是分辨率分两档。
发现一个排版缺陷后,先问「同样的结构还出现在哪」。 列粘连第一次出现在附录 A, 只把那一列改成左对齐就过去了;它在附录 B 又出现了一次,因为根因没动。修症状会让同一个 bug 出现两次。