plotly / plotly/react-plotly.js
Rangeselector buttons flashing
還沒有人認領這個 Issue。
- 主要語言
- JavaScript
- 星號
- 1.1k
- 分支
- 138
- 平均合併
- 3 天 2 小時
- 30 天內合併 PR
- 4
描述
I have a simple react plotly chart. I've been playing around with styles and such, but no matter what I do all but the left most rangeselector buttons continuously flash on hover. Including a video below.
I'm using react-plotly.js 2.6.0 and will include my component code in it's entirety below.
Is this an issue I should direct to the main plotly library?
https://github.com/plotly/react-plotly.js/assets/7331495/73eb4341-ed2f-4cf8-b2d5-c4ba9ab60e0c
import { useEffect, useState } from "react";
import Loading from "./Loading";
import Plot from 'react-plotly.js';
import { PropTypes } from "prop-types";
import React from "react";
import { formatMonthData } from "../utils/formatMonthData";
const MonthlyStats = ({userId}) => {
const [loading, setLoading] = useState(false);
const [months, setMonths] = useState([])
const [runMiles, setRuns] = useState([])
const [walkMiles, setWalks] = useState([])
useEffect(() => {
const retrieveData = async () => {
setLoading(true);
const response = await fetch(`https://us-central1-stroller-stats.cloudfunctions.net/app/monthly-activities/${userId}`)
const data = await response.json();
const [months, runDistances, walkDistances] = formatMonthData(data)
setMonths(months)
setRuns(runDistances)
setWalks(walkDistances)
setLoading(false);
}
retrieveData()
}, [userId])
const data = [
{
x: months,
y: runMiles,
type: 'scatter',
name: "Run miles",
mode: 'lines+markers',
marker: {color: '#03045e'},
line: {color: "#03045e", width: 3}
},
{
x: months,
y: walkMiles,
type: 'scatter',
name: "Walk miles",
mode: 'lines+markers',
marker: {color: "#00f5d4"},
line: {color: "#00f5d4", width: 3}
},
]
const layout = {
font: {family: "Inter", color: "black"},
font_color: "black",
dragmode: false,
xaxis: {
rangeselector: {
buttons: [{
step: 'month',
stepmode: 'backward',
count: 6,
label: '6m'
},{
step: 'year',
stepmode: 'todate',
count: 1,
label: 'YTD'
}, {step: 'all'}]
},
type: "date", 'tickformat': '%b', tickmode: "array", tickvals: months},
yaxis: {visible: true, hoverformat: ".2f"},
hovermode: "x",
tickformat: ".0f",
legend: {
orientation: "h"
},
margin: { r: 0, l: 15, t: 0}
}
return (
<>
<h1>Monthly stroller miles</h1>
{loading ? <Loading /> :
<Plot
data={data}
layout={layout}
useResizeHandler={true}
style={{width: "100%"}}
config={{displayModeBar: false}}
/>}
</>
);
}
MonthlyStats.propTypes = {
userId: PropTypes.string.isRequired,
}
export default MonthlyStats;
貢獻指南
這個儲存庫沒有索引到貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
首先,使用提供的 MonthlyStats 元件和 react-plotly.js 2.6.0 重現 issue #329,重點關注 xaxis rangeselector 按鈕及其 hover 行為。將其行為與底層 Plotly 函式庫進行比較,以判斷缺陷屬於此 React wrapper 還是 upstream。完成的條件是找出負責的專案,並記錄最小重現或已確認的修正位置。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- javascript, react
- 領域
- data-visualization, frontend
- Issue 類型
- 缺陷
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100