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

R语言Plotly散点图为不同分类设置不同标记形状的实现方法

解决方法

你只需要在plot_ly()函数中新增symbol和symbols两个参数即可实现按分类自定义标记形状,修改后的完整代码如下:

library(dplyr)
library(plotly)
library(plyr)

df <- data.frame(
    Category = c('foo', 'bar', 'bar', 'foo'),
    x = c(2.1, 3.4, 4, 4),
    y = c(16, 21, 10, 17)
)

palette <- c("#007700", "#cc0000")
fig <- plot_ly(data = df, x = ~x, y = ~y, size = 10, 
               color = ~Category, colors = palette,
               symbol = ~Category, # 将标记形状绑定到Category字段
               symbols = c("foo" = "square", "bar" = "triangle-up")) # 自定义不同分类对应的标记形状
fig

参数说明

  • symbol = ~Category:告诉plotly需要按照Category字段的取值区分标记形状
  • symbols:接收形状配置,这里用命名向量绑定分类值和对应的标记类型,避免因分类排序变化导致形状匹配错误,其中:
    • square对应正方形标记
    • triangle-up对应向上的三角形标记,如果你需要向下的三角形可以替换为triangle-down

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:24:03