Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

`ggplotly` error on plot with `geom_contour` when one level of a factor isn't represented

未關閉
#2,205 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

評估

難度
3/5
預估耗時
1-2 天
新手友好度
48/100
Issue 類型
缺陷
描述清晰度
基本清楚
活躍度
停滯
技術堆疊
r

研究方向

首先執行 issue 中可重現的 R 範例,並追蹤 ggplotly 如何處理由缺少的因子水準所產生的 zero-contour 圖層。完成的標準是:繪圖不再拋出資料框替換錯誤,同時保留具資訊性的 zero-contour 警告。

由索引模型根據 Issue 內容生成。

描述

Hi R Plotly Devs,
I hope this finds you well!
This issue involves a dataset with a factor where one factor level isn't represented.
When rendering a ggplot that plots a contour, ggplot will provide informative warnings that zero contours were drawn due to the missing factor level.
However, when this plot object is passed into ggplotly the following error is thrown:

Warning: stat_contour(): Zero contours were generated
Warning in min(x) : no non-missing arguments to min; returning Inf
Warning in max(x) : no non-missing arguments to max; returning -Inf
Error in `$<-.data.frame`(`*tmp*`, "fill", value = NA) : 
  replacement has 1 row, data has 0

I hope this is a relatively easy fix!

df <- tibble::tribble(
  ~response,        ~variable,      ~prediction,
  7.45549,          6.24703, "No",
  7.45549, 6.62491208333333, "No",
  7.45549, 7.00279416666667, "No",
  7.45549,       7.38067625, "No",
  7.45549, 7.75855833333333, "No",
  7.45549, 8.13644041666667, "No"
) |> 
  dplyr::mutate(prediction = factor(prediction, levels = c("Yes", "No")))
p = ggplot2::ggplot(data = df) +
  ggplot2::geom_point(data = df,
                      ggplot2::aes(
                        x = .data$response,
                        y = .data$variable,
                        color = prediction),
                      shape = 15,
                      size = 0.7,
                      alpha = 0.4) +
  ggplot2::geom_contour(data = df,
                        ggplot2::aes(x = .data$response,
                                     y = .data$variable,
                                     z = as.integer(prediction)),
                        color = "violet",
                        size = 0.5,
                        bins = 1)
plotly::ggplotly(p)
主要語言
R
星號
2.7k
分支
640
PR 合併指標
30 天內沒有已合併 PR

環境準備

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 閱讀貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

plotly/plotly.R 的其他 Issue

查看 plotly/plotly.R 的全部 Issue

相似的 Issue

更多 R Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。