strange jumps when zooming on real time chart
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 18.3k
- Forks
- 2k
- Merge moyen
- 2 j 12 h
- PR mergées (30 j)
- 28
Description
Hi,
is there a way to fix this?
not sure if it's related to react-plotly or plotly.js
The chart jumps back and forth in a confusing way while scrolling forward.
The faster I scroll the more extreme it jumps back.
When using the toolbar, it behaves normal.
useEffect(() => {
setInterval(()=>{
$_state(($:any) => {
console.log($)
const _x = $.data[0].x
const _y = $.data[0].y
const _ymin = _y[_y.length-1] - gaussianRand()/100
const _ypls = _y[_y.length-1] + gaussianRand()/100
return {...$, data: [
{
...$.data[0],
x: [..._x, _x[_x.length-1]+0.1],
y: [..._y, ~~(Math.random()*2) ? _ymin : _ypls],
}
]}
})
}, 100)
},[])
return (
<Plot
className={jss.root}
data={_state.data}
layout={_state.layout}
config={_state.config}
onInitialized={figure => $_state(figure)}
onUpdate={figure => $_state(figure)}
/>
);
const [_state, $_state] = useState({
data:[
{
type: 'scattergl',
mode: 'markers',
marker: {
color : 'rgba(255, 255, 255, 0)',
line: {
width: 1,
color: ['rgba(255, 255, 255, 0.5)', 'rgba(255, 255, 0, 1)']
}
},
x: [0],
y: [0],
}]
, layout: {
title: '-',
font: {
family:'IBM Plex Mono',
size:10,
},
margin: {
l: 50,
r: 50,
b: 50,
t: 50,
pad: 4
},
plot_bgcolor: 'rgba(255,255,255,0)',
paper_bgcolor: 'rgba(255,255,255,0)',
yaxis: {
tickcolor: 'rgba(255,255,255,0.1)',
tickwidth: 1,
gridcolor: 'rgba(255,255,255,0.1)',
gridwidth: 1,
zerolinecolor: 'rgba(255,255,255,0.1)',
zerolinewidth: 1,
},
xaxis: {
tickcolor: 'rgba(255,255,255,0.1)',
tickwidth: 1,
zerolinecolor: 'rgba(255,255,255,0.1)',
zerolinewidth: 1,
gridcolor: 'rgba(255,255,255,0.1)',
gridwidth: 1,
},
}, frames: [], config: {
scrollZoom:true,
}})
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez avec l’exemple React fourni, qui utilise le graphique scattergl de Plotly, des données x/y ajoutées rapidement et scrollZoom activé. Comparez le défilement à la molette avec le comportement de la barre d’outils et utilisez l’enregistrement lié pour reproduire les sauts en arrière ; le travail est terminé lorsque le défilement vers l’avant reste stable pendant l’ajout de données en temps réel.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, react
- Domaine
- data-visualization, frontend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100