科研图表中误差棒的正确使用:从概念到Python/R实战
在科研论文写作中图表是展示数据、支撑结论的核心。然而许多研究者尤其是刚入门的研究生和部分匆忙投稿的作者常常在数据处理和图表呈现上犯下基础性错误。其中误差棒Error Bar的误用、滥用甚至伪造是一个极其普遍却又容易被忽视的“重灾区”。更令人咋舌的是当不知道如何计算和添加误差棒时竟有人直接用字母“T”画在图上充数这种离谱的操作背后反映的是对科研严谨性的漠视和基础统计知识的匮乏。本文将系统性地拆解误差棒的正确使用方法从概念、计算到绘图提供完整的、可复现的代码示例Python R并指出常见误区与“造假”手段助你彻底掌握这一科研基本功远离学术不端的风险。1. 误差棒是什么为什么它如此重要在开始之前我们必须明确一个核心观念在科学实验中几乎没有测量值是绝对精确的。误差棒就是用来可视化表示数据不确定性或变异程度的图形工具。它通常是在柱状图、散点图或折线图的数据点上附加的一条短线其长度代表了数据的波动范围。1.1 误差棒的核心意义展示数据的可靠性误差棒越长说明数据点的不确定性越大反之则越精确。审稿人和读者通过误差棒可以快速判断你实验结果的可靠程度。进行统计推断在多数情况下如果两个数据点的误差棒没有重叠需注意这只是一个非常粗略的判断可能暗示着它们之间存在统计学上的显著差异。但严谨的判断需要基于正式的统计检验如t检验。体现科研严谨性正确使用误差棒是科研绘图的基本规范能直接体现作者严谨的科学态度。1.2 常见的误差类型误差棒可以代表多种统计量绝对不能混用这是最常见的错误之一。误差类型含义适用场景标准差 (Standard Deviation, SD)描述单个样本内部数据点围绕其均值的离散程度。展示你手中这份数据的分布情况。例如展示10只小鼠体重的个体差异。标准误 (Standard Error of the Mean, SEM)描述样本均值估计总体均值的精确度。SEM SD / √n。用于推断总体参数。在生物医学论文中非常常见用于比较组间差异。置信区间 (Confidence Interval, CI)有XX%的把握认为总体均值落在这个区间内。通常用95% CI。比SEM更直观地展示估计的可靠性在流行病学、社会科学中常用。核心区别SD告诉你数据的“胖瘦”SEM告诉你均值的“准头”。由于SEM SD/√n样本量(n)越大SEM会越小。因此单纯通过缩小误差棒比如用SEM代替SD来让图表“更好看”是一种误导性行为。2. 环境准备与绘图工具本文将使用最流行的两种科研绘图工具PythonMatplotlib/Seaborn和 Rggplot2并提供完整代码。你可以任选其一进行复现。2.1 Python 环境# 推荐使用 Anaconda 或 Miniconda 创建环境 conda create -n plot_demo python3.9 conda activate plot_demo # 安装必要库 pip install numpy pandas matplotlib seaborn scipyNumPy/Pandas: 数据处理。Matplotlib: 基础绘图库功能强大。Seaborn: 基于Matplotlib的高级接口绘制统计图形更简便。SciPy: 提供统计计算功能。2.2 R 环境# 在R或RStudio中安装包 install.packages(c(tidyverse, ggplot2, dplyr, Rmisc))tidyverse/ggplot2: 绘图核心套件。dplyr: 数据处理。Rmisc: 方便计算标准误和置信区间。2.3 示例数据我们生成一份模拟数据包含三组Control, Treatment_A, Treatment_B每组有10个重复测量值。# Python 生成示例数据 import numpy as np import pandas as pd np.random.seed(42) # 确保结果可复现 group_names [Control, Treatment_A, Treatment_B] data_dict {} for group in group_names: # 假设Control组均值50处理组均值60和55都有一定随机波动 mean_val 50 if group Control else (60 if group Treatment_A else 55) data_dict[group] np.random.normal(locmean_val, scale8, size10) # scale为标准差 # 转换为长格式DataFrame这是Seaborn和ggplot2偏好的格式 data_list [] for group, values in data_dict.items(): for val in values: data_list.append([group, val]) df pd.DataFrame(data_list, columns[Group, Value]) print(df.head())# R 生成示例数据 set.seed(42) group - rep(c(Control, Treatment_A, Treatment_B), each10) value - c(rnorm(10, mean50, sd8), rnorm(10, mean60, sd8), rnorm(10, mean55, sd8)) df - data.frame(Groupgroup, Valuevalue) head(df)3. 正确绘制误差棒从计算到可视化本节将分别展示如何计算SD、SEM并绘制带有正确误差棒的柱状图。3.1 计算各组统计量首先我们需要计算每组的均值、标准差和标准误。# Python 计算统计量 summary_df df.groupby(Group)[Value].agg([mean, std, count]).reset_index() summary_df[sem] summary_df[std] / np.sqrt(summary_df[count]) # 计算95%置信区间 (假设数据近似正态分布使用t分布临界值) from scipy import stats ci_high [] ci_low [] for idx, row in summary_df.iterrows(): sem row[sem] df row[count] - 1 # 自由度 t_critical stats.t.ppf(0.975, df) # 双尾95%置信区间 ci_high.append(row[mean] t_critical * sem) ci_low.append(row[mean] - t_critical * sem) summary_df[ci_high] ci_high summary_df[ci_low] ci_low print(summary_df)# R 计算统计量 library(dplyr) library(Rmisc) summary_df - df %% group_by(Group) %% summarise( mean mean(Value), sd sd(Value), n n(), sem sd / sqrt(n) ) %% mutate( ci_low mean - qt(0.975, dfn-1) * sem, ci_high mean qt(0.975, dfn-1) * sem ) print(summary_df)3.2 使用Matplotlib绘制带标准差(SD)误差棒的柱状图import matplotlib.pyplot as plt import numpy as np groups summary_df[Group] means summary_df[mean] sds summary_df[std] x_pos np.arange(len(groups)) plt.figure(figsize(8,6)) # 绘制柱状图 bars plt.bar(x_pos, means, color[skyblue, lightgreen, salmon], edgecolorblack, width0.6) # 添加误差棒 (yerr参数接受误差值capsize设置误差棒顶端横线) plt.errorbar(x_pos, means, yerrsds, fmtnone, colorblack, capsize5, linewidth1.5) plt.xticks(x_pos, groups, fontsize12) plt.ylabel(Measurement Value, fontsize12) plt.title(Bar Plot with Standard Deviation (SD) Error Bars, fontsize14, pad20) plt.grid(axisy, alpha0.3) plt.tight_layout() plt.show()关键参数解释yerrsds: 指定误差棒的长度为标准差。fmtnone: 表示不绘制数据点标记只画误差棒。capsize5: 误差棒两端横线的长度使图表更清晰。colorblack: 误差棒颜色。3.3 使用Seaborn绘制带标准误(SEM)误差棒的柱状图Seaborn的barplot函数默认使用自助法bootstrap计算95%置信区间但可以通过参数轻松切换。import seaborn as sns plt.figure(figsize(8,6)) # 绘制柱状图误差棒显示95%置信区间默认 ax sns.barplot(xGroup, yValue, datadf, ci95, capsize0.1, paletteSet2) # 如果想显示标准误SEM需要自定义计算这里展示另一种方法 plt.title(Bar Plot with 95% Confidence Intervals (Seaborn Default), fontsize14, pad20) plt.ylabel(Measurement Value, fontsize12) # 可以在柱子上标注均值 for i, p in enumerate(ax.patches): height p.get_height() ax.text(p.get_x() p.get_width()/2., height 1, f{height:.1f}, hacenter, fontsize10) plt.tight_layout() plt.show()注意Seaborn新版本中ci参数已改为errorbar可使用errorbar(ci, 95)或errorbarsd等。3.4 使用R ggplot2绘制带误差棒的图表ggplot2在科研绘图领域享有盛誉其语法清晰图形美观。library(ggplot2) # 绘制带标准差误差棒的柱状图 p_sd - ggplot(summary_df, aes(xGroup, ymean, fillGroup)) geom_bar(statidentity, width0.7) geom_errorbar(aes(yminmean-sd, ymaxmeansd), width0.2, size0.8) labs(titleBar Plot with Standard Deviation (SD) Error Bars, yMeasurement Value) theme_minimal() theme(legend.positionnone) print(p_sd) # 绘制带标准误和显著性标记的图表更接近发表水平 library(ggpubr) p_sem - ggplot(df, aes(xGroup, yValue, fillGroup)) geom_bar(statsummary, funmean, width0.7) stat_summary(fun.datamean_se, geomerrorbar, width0.2) # mean_se计算标准误 stat_compare_means(methodanova, label.y75) # 添加方差分析p值 labs(titleBar Plot with Standard Error of the Mean (SEM), yMeasurement Value) theme_classic() print(p_sem)4. 论文中误差棒的常见“离谱”错误与造假手段这里列举一些在实际审稿中遇到的真实或近乎真实的反面案例。4.1 错误类型概念混淆与误用用SD代替SEM或反之这是最常见的无心之过。如前所述两者意义不同。用SEM会让误差棒看起来更小可能误导读者认为数据精度更高。误差棒方向错误在非对称数据如仅显示正误差或对数坐标中误差棒应正确计算和绘制上下限。忽略样本量在合并多次独立实验数据时错误地计算了总体误差棒而没有考虑每次实验的内部变异。4.2 “离谱”操作伪造与捏造“T”型误差棒如标题所述因为不会用软件绘制干脆在PPT或图片编辑软件里手动在柱子顶端画一个“T”字。这完全失去了误差棒的统计意义是纯粹的图形装饰属于学术不端。随意指定误差棒长度没有经过计算凭感觉或为了“美观”设定一个固定的、很小的误差值使所有柱子的误差棒看起来整齐划一且微小。复制粘贴误差棒将A组的误差棒数值直接用于B组因为“看起来差不多”。隐藏不利数据剔除变异大的数据点使误差棒变小从而制造出“效果显著”的假象。修改原始数据直接篡改测量值从根本上伪造误差棒。这些行为的后果轻则导致结论不可靠被审稿人质疑重则构成数据造假导致论文被撤稿作者学术声誉扫地。5. 完整实战案例从数据处理到出版级图表生成让我们完成一个完整的流程读取真实数据、计算统计量、绘制带正确误差棒和显著性检验的图表并导出为出版级图片。5.1 案例背景与数据假设我们研究三种肥料A, B, C对植物株高的影响每组测量了15株植物。# 模拟生成“真实”数据 np.random.seed(123) fertilizers [Fert_A, Fert_B, Fert_C] base_height 30 effect [0, 5, 3] # 肥料效应 data [] for fert, eff in zip(fertilizers, effect): # 每组高度略有不同且存在随机误差 heights np.random.normal(locbase_heighteff, scale3, size15) for h in heights: data.append([fert, h]) plant_df pd.DataFrame(data, columns[Fertilizer, Height_cm]) plant_df.to_csv(plant_growth_data.csv, indexFalse) # 保存为CSV print(plant_df.head())5.2 统计分析方差分析与事后检验在绘制图表前通常需要先进行统计检验以确定哪些组间存在显著差异。from scipy.stats import f_oneway from statsmodels.stats.multicomp import pairwise_tukeyhsd # 1. 单因素方差分析 (ANOVA) groups [plant_df[plant_df[Fertilizer]f][Height_cm].values for f in fertilizers] f_stat, p_value f_oneway(*groups) print(fANOVA结果: F{f_stat:.4f}, p{p_value:.4f}) # 2. 如果ANOVA显著p0.05进行事后比较Tukey HSD if p_value 0.05: tukey pairwise_tukeyhsd(plant_df[Height_cm], plant_df[Fertilizer], alpha0.05) print(tukey.summary()) # 可以将结果转换为DataFrame便于后续使用 tukey_df pd.DataFrame(datatukey.summary().data[1:], columnstukey.summary().data[0])5.3 绘制出版级图表我们将绘制一个包含均值±SEM误差棒并在显著差异的组间添加连线与星号标记的图表。import matplotlib.pyplot as plt import seaborn as sns from matplotlib import rcParams # 设置字体和分辨率出版要求 rcParams[font.family] sans-serif rcParams[font.sans-serif] [Arial] rcParams[savefig.dpi] 300 rcParams[figure.dpi] 300 # 计算均值和SEM stats_df plant_df.groupby(Fertilizer)[Height_cm].agg([mean, std, count]).reset_index() stats_df[sem] stats_df[std] / np.sqrt(stats_df[count]) # 创建图形 fig, ax plt.subplots(figsize(6, 8)) x_pos range(len(stats_df)) bars ax.bar(x_pos, stats_df[mean], colorlightgray, edgecolorblack, width0.6, linewidth1.5) # 绘制误差棒 (SEM) ax.errorbar(x_pos, stats_df[mean], yerrstats_df[sem], fmtnone, ecolorblack, elinewidth1.5, capsize5, capthick1.5) # 设置坐标轴 ax.set_xticks(x_pos) ax.set_xticklabels(stats_df[Fertilizer], fontsize12) ax.set_ylabel(Plant Height (cm), fontsize12) ax.set_ylim(0, stats_df[mean].max() * 1.3) # 为显著性标记留出空间 ax.spines[top].set_visible(False) ax.spines[right].set_visible(False) # 手动添加显著性标记 (基于Tukey HSD结果) # 假设Fert_B vs Fert_A显著 (p0.01), Fert_B vs Fert_C显著 (p0.05) import matplotlib.patches as mpatches # 绘制连线 def draw_significance_bar(start, end, y, p_text): line_y y ax.plot([start, start, end, end], [line_y, line_y1, line_y1, line_y], lw1, cblack) ax.text((startend)*0.5, line_y2, p_text, hacenter, vabottom, fontsize10) # 第一组比较 draw_significance_bar(0, 1, stats_df[mean].max()*1.05, **) # p0.01 # 第二组比较 draw_significance_bar(1, 2, stats_df[mean].max()*1.12, *) # p0.05 # 添加图例 sem_patch mpatches.Patch(facecolornone, edgecolorblack, labelMean ± SEM) star_legend ax.text(0.02, 0.98, ** p0.01, * p0.05, transformax.transAxes, fontsize9, verticalalignmenttop) ax.legend(handles[sem_patch], locupper left, frameonFalse) plt.tight_layout() # 保存图片 plt.savefig(publication_quality_bar_chart.png, bbox_inchestight) plt.show()6. 常见问题与排查清单Q1: 我的数据不是正态分布还能用这些误差棒吗A:标准差(SD)和标准误(SEM)基于均值计算对非正态数据可能产生误导。此时你可以使用中位数Median和四分位距IQR来概括数据并在箱线图Boxplot或小提琴图Violin Plot中展示。使用自助法Bootstrap计算的置信区间它对分布假设要求较低。考虑对数据进行转换如对数转换使其接近正态。Q2: 误差棒重叠就一定没有显著性差异吗A: 不一定这是一个广泛存在的误解。误差棒尤其是SEM或CI的重叠程度与统计显著性没有简单的对应关系。判断差异是否显著必须进行正式的统计检验如t检验、ANOVA。误差棒重叠可能仍然存在显著差异反之亦然。Q3: 应该用柱状图还是散点图A:对于展示数据分布散点图加上均值±误差棒或箱线图通常优于单纯的柱状图因为它们能展示原始数据点的分布。柱状图误差棒容易隐藏数据的真实分布形态如双峰、异常值。许多顶级期刊现在更推荐使用散点图或箱线图。Q4: 多次独立实验的数据误差棒怎么合并A:正确的方法是进行混合效应模型Mixed-effects model分析将“实验批次”作为随机效应。简单的做法是先将每次实验的数据标准化如减去对照组的均值然后将所有标准化后的数据合并再计算总的均值和误差棒。切忌将几次实验的均值直接求平均再计算误差。Q5: 绘图时误差棒的颜色、粗细、样式有什么规范A:没有绝对规范但需遵循清晰、一致的原则误差棒颜色通常与数据点或柱子颜色对比明显常用黑色。线宽要足够在缩放后清晰可见。capsize顶端横线不宜过长或过短。在同一篇文章的所有图表中同类型误差棒如所有SEM的样式应保持一致。7. 最佳实践与工程建议先检验后绘图在决定用哪种误差棒和图表前先检查数据的分布正态性检验、方差齐性检验。明确标注在图例或图注中必须明确说明误差棒代表的是什么如“Data are mean ± SEM, n10”。这是硬性要求。保留原始数据图表应能追溯到原始数据。在论文补充材料中提供原始数据是越来越普遍的要求。选择合适的图表类型比较组间均值柱状图误差棒。展示数据分布箱线图、小提琴图、带分布的散点图。展示时间趋势折线图误差棒带或阴影区间。使用专业工具放弃PPT或画图软件手动绘制。坚持使用Python (Matplotlib/Seaborn)、R (ggplot2)、GraphPad Prism、Origin等专业统计绘图软件它们能确保计算的准确性。代码可复现将数据处理、统计分析和绘图的代码完整保存如Jupyter Notebook或R Script。这不仅是良好科研习惯也能在需要修改或答复审稿意见时快速响应。了解期刊要求投稿前仔细阅读目标期刊的“图表制作指南”了解其对误差棒、图表格式、分辨率、字体大小的具体要求。误差棒虽小却是科研诚信与专业水平的试金石。从理解SD与SEM的区别到用代码正确计算和绘制再到规避各种常见错误和造假陷阱每一步都需要扎实的统计知识和严谨的态度。希望这篇教程能帮助你彻底掌握误差棒的使用让你论文中的图表不仅美观更能经得起推敲真实、准确地传达你的科学发现。记住在科研的道路上对细节的尊重就是对科学本身最大的尊重。

相关新闻

SQL核心查询实战:从SELECT到GROUP BY的快速入门指南

SQL核心查询实战:从SELECT到GROUP BY的快速入门指南

这次我们来看一个面向初学者的 SQL 入门教程系列,来自“青岑网安”。这个系列的重点不是讲高深的理论,而是直接上手操作,让你快速掌握 SQL 的核心查询能力,并能应对一些基础的实战场景,比如数据查询、筛选和排序。对于…

2026/9/28 20:12:17 阅读更多 →
浏览器中部署VSCode:基于code-server的远程开发环境搭建与优化

浏览器中部署VSCode:基于code-server的远程开发环境搭建与优化

1. 项目概述:为什么我们需要浏览器里的VSCode? 作为一名常年和代码打交道的开发者,我经历过无数次这样的场景:临时需要查看或微调一段服务器上的配置文件,手边却没有趁手的IDE;在咖啡馆用朋友的电脑&#…

2026/10/11 3:30:09 阅读更多 →
AI服务流式执行引擎架构解析:从请求生命周期到异步生成器设计

AI服务流式执行引擎架构解析:从请求生命周期到异步生成器设计

1. 从一次“泄露”事件说起:我们到底能学到什么?最近,关于Claude Code的一些内部实现细节在技术社区里引发了不小的讨论。作为一个长期关注AI工程化落地的开发者,我的第一反应不是去评判事件本身,,而是被其…

2026/10/13 5:33:20 阅读更多 →

最新新闻

SMP双路服务器性能调优:NUMA与缓存一致性实战解析

SMP双路服务器性能调优:NUMA与缓存一致性实战解析

上一篇《SMP心路历程(之一)》发出之后,后台一直有人追问两件事:一个是“SMP到底是什么意思”,另一个是“一台双路机器到底能不能顶两台单机”。既然系列写到第二篇,我先把这两个问题一次性说清楚。 这里说…

2026/10/14 13:35:39 阅读更多 →
日期累加问题:从基础算法到工程思维的完整解析

日期累加问题:从基础算法到工程思维的完整解析

1. 日期累加问题的本质拆解1.1 这道题到底在考什么看到"输入2019年的month和day,输出这是第几天"这个需求,很多人第一反应是"这不就是个加法吗"。但真正动手写的时候,你会发现坑比想象中多。这道题表面上是让你算一个累加…

2026/10/14 13:35:39 阅读更多 →
NVIDIA OpenShell:AI Agent 权限管控与沙箱隔离实战

NVIDIA OpenShell:AI Agent 权限管控与沙箱隔离实战

1. 从一条开源消息说起:AI Agent 的权限困局NVIDIA 最近在 GitHub 上放出了一个叫 OpenShell 的项目,定位很明确——给 AI Agent 做权限管控和沙箱隔离。我第一时间把仓库拉下来跑了一遍,说实话,这个东西解决的是当下 Agent 开发里…

2026/10/14 13:35:39 阅读更多 →
电商评论情感节律分析:K-Means与PCA协同的轻量闭环系统

电商评论情感节律分析:K-Means与PCA协同的轻量闭环系统

1. 这不是又一个“情感分析毕设”,而是一套能跑通真实电商评论流的轻量级分析闭环你可能已经看过太多标题里带“情感分析”“K-Means”“PCA”的毕业设计——代码能跑,图表能出,答辩PPT一页页堆满公式,但只要把真实爬下来的京东/拼…

2026/10/14 13:35:39 阅读更多 →
焦虑症认知行为疗法与生理调节实战指南

焦虑症认知行为疗法与生理调节实战指南

1. 焦虑症的本质与认知重构《应对焦虑症》这本书开篇就直指核心——焦虑本质上是我们大脑对潜在威胁的过度预警系统。就像老式烟雾报警器有时会对烧焦的面包片产生误报一样,现代人的焦虑机制常常会对并不存在的危险持续拉响警报。1.1 生理机制的误判当我在心理咨询室…

2026/10/14 13:35:39 阅读更多 →
OCR 把字都认出来了,RAG 为什么还答错?给 PDF 解析补上这四类检查

OCR 把字都认出来了,RAG 为什么还答错?给 PDF 解析补上这四类检查

财报里的公司名、年份和金额明明都能搜到,提问“2024 年收入是多少”,模型却一本正经把 2023 年那一列的数值报了出来。 这时候继续死磕 Prompt 往往没用。错误在进入向量库之前就已经注定了:OCR 确实把文字抓全了,却把表格里的二…

2026/10/14 13:34:36 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →