You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言使用Plotly绘制折线图出现C栈使用率超限错误如何解决

R中Plotly绘制时间序列触发C栈溢出报错的解决方案

报错根因

该报错核心是strptime()返回的为POSIXlt类型时间对象,这类对象采用列表结构存储时间信息,Plotly在序列化处理时会触发无限递归,哪怕数据量极小也会触发栈溢出错误。

解决方法

将时间格式转换为Plotly兼容的POSIXct类型即可,POSIXct采用数值格式存储时间,不会触发递归解析问题。

修正后代码

library(plotly)

df = head(originalDf, 3)
# 直接生成POSIXct格式时间,可根据实际时区调整tz参数
dt = as.POSIXct(df$dt, format = "%Y-%m-%dT%H:%M:%OSZ", tz = "UTC")
myvalue = df$myvalue
plot_ly(df, x = dt, y = myvalue, type = 'scatter', mode = 'lines')

额外排查点

如果修改后仍存在异常,可按以下步骤排查:

  • 检查原始时间字符串的格式是否与指定的format参数完全匹配,格式不匹配生成的NA值可能触发额外异常
  • 先用R基础plot()函数绘制折线图,确认时间解析环节本身不存在错误,排除数据预处理问题
  • 升级Plotly包与R版本,旧版本Plotly对时间类型的适配存在已知缺陷

内容的提问来源于stack exchange,提问作者Simon Rex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:30:00