plotly / plotly/plotly.R

ggplotly ignores scale_y_discrete(breaks = NULL)

未关闭
#1,154 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

ggplotly
主要语言
R
星标
2.7k
派生
641
PR 合并指标
30 天内没有已合并 PR

描述

In ggplot, scale_y_discrete(breaks = NULL) eliminates axis tick marks and grid lines for the specified discrete axis, like so:

ggplot_2

But ggplotly() does not apply this setting, producing this output:

ggplotly_2

Note that scale_y_discrete(breaks = NULL) does have some impact, by causing the y axis title to overlap the y axis tick mark values, which does not happen if that line of code is omitted.


Reproducible example:

library(ggplot2)
library(dplyr)
library(plotly)

d = data.frame(case = as.factor(rep(1:5, each = 4)),
               time = as.factor(rep(1:4, times = 5)))

p = d %>% 
	ggplot(aes(x = time, y = case)) +
	geom_point() + 
	# suppress the y axis labels and grids (ggplotly ignores this):
	scale_y_discrete(breaks = NULL)

print(p) # standard ggplot output has no y axis breaks

ggplotly(p) # but plotly output includes y axis breaks

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先运行使用 ggplot2 和 plotly 的可复现 R 示例,将标准 ggplot 输出与 ggplotly(p) 进行比较。追踪 ggplotly 如何转换 scale_y_discrete(breaks = NULL);当转换后的图没有 y 轴刻度线、标签或网格线,并且与 ggplot 一致时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
plotly, r
领域
data-visualization
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。