plotly / plotly/plotly.R

color/symbol mapping breaks `transforms` filter

オープン
#1,502 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

bug difficulty: medium priority: medium
主要言語
R
スター
2.7k
フォーク
641
PR マージ指標
30日以内にマージされた PR はありません

説明

Issue

transforms filter plus color/symbol mapping seems to break the transforms filter.

Reprex

Sample data

df <- data.frame(
    x = c(1:10, 1:10),
    y = c(1:10, 10:1),
    z = c(rep("up", 10), rep("down", 10)))

The idea is to only show data where z = "up" through a transforms filter.

Case 1: transforms filter without color mapping

This works

plot_ly(
    df,
    x = ~x, y = ~y, text = ~z,
    type = "scatter", mode = "markers+text",
    marker = list(size = 10, opacity = 0.8),
    transforms = list(
        list(
            type = "filter",
            target = ~z,
            operation = "=",
            value = "up")))

Screen Shot 2019-03-21 at 3 58 58 pm

Case 2: transforms filter with color mapping

This does not work

plot_ly(
    df,
    x = ~x, y = ~y, text = ~z, color = ~z,
    type = "scatter", mode = "markers+text",
    marker = list(size = 10, opacity = 0.8),
    transforms = list(
        list(
            type = "filter",
            target = ~z,
            operation = "=",
            value = "up")))

Screen Shot 2019-03-21 at 3 59 35 pm

Summary

In both cases the transforms filter is the same and should select only those entries where z = "up"; however, when a color (or symbol) mapping is added, for some reason only entries where z = "down" are shown.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

Issue にある 2 つの plot_ly() reprex から始め、color = ~z または symbol のマッピングあり・なしで生成される動作を比較します。提供されたデータを使って transforms フィルターを再現し、その後、関連する plotly.R のマッピングと transforms の処理を追跡します。color または symbol のマッピングを有効にしたとき、フィルターが一貫して z = "up" の行だけを表示すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
r
領域
data-visualization
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
38/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。