Height of plot is 0 until resize after changing layout input
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 38/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- angular, typescript
- Domaine
- frontend
Piste de recherche
Commencez par le composant du template Angular et par l’entrée de layout mise à jour par le signal de thème. Reproduisez un changement de thème, puis comparez la hauteur du conteneur du graphique avant et après la mise à jour, sans redimensionner la fenêtre. Le travail est terminé lorsque les graphiques responsive conservent la hauteur réelle de leur conteneur immédiatement après les modifications du layout.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Hello,
I'm having a bit of trouble with my charts in a dashboard. I've implemented theme switching in my application using system variables and Angular Material. I'm able to change my chart's look and feel according to the colors of my theme. However, the container will collapse when I switch to a new theme because the plotly-plot element has a height of 0 until I resize the window.
Injectable
import { DOCUMENT } from '@angular/common';
import {
computed,
effect,
inject,
InjectionToken,
signal,
} from '@angular/core';
import { WA_WINDOW } from '@ng-web-apis/common';
export const THEME = new InjectionToken('Theme', {
factory: () => {
const w = inject(WA_WINDOW);
const d = inject(DOCUMENT);
const darkMode = signal(true);
const setDarkMode = effect(() =>
d.documentElement.classList.toggle('light', !darkMode())
);
return {
darkMode,
textColor: computed(() => {
darkMode();
return getComputedStyle(d.documentElement).getPropertyValue(
'--mat-app-text-color'
);
}),
};
},
});
Component
...
readonly #theme = inject(THEME);
readonly ageGenderChartLayout = computed<Partial<Plotly.Layout>>(() => ({
barmode: 'stack',
autosize: true,
margin: {
l: 60,
r: 50,
b: 100,
t: 50,
pad: 4,
},
title: 'People by Age',
paper_bgcolor: 'rgba(255,255,255,0)',
plot_bgcolor: 'rgba(255,255,255,0)',
font: {
color: this.#theme.textColor(),
},
}));
...
Template
<mat-card>
<mat-card-content>
@if (mapData$ | async; as mapData) {
<plotly-plot [data]="mapData"
[layout]="mapLayout()"
[config]="{responsive: true, mapboxAccessToken: mapboxToken, displaylogo: false, modeBarButtonsToRemove: ['toImage']}" />
} @else {
<mat-spinner style="margin: auto;"></mat-spinner>
}
</mat-card-content>
</mat-card>
Before switching themes:
After switching themes (which updates the layout input of the plotly-plot component):
How can I have responsive charts while still have their containers "see" their actual height? is this a Plotly chart issue?
- Langage dominant
- TypeScript
- Étoiles
- 242
- Forks
- 81
- Merge moyen
- 23 h 52 min
- PR mergées (30 j)
- 5
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
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.
Autres issues de plotly/angular-plotly.js
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
plotly/angular-plotly.js#373 ·
Les mainteneurs répondent en général sous 1 jour
-
Feature request: please add migration guidePeut-être pris @andrefarzat l’a pris il y a 21 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
plotly/angular-plotly.js#285 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
event handlers are not typedPeut-être pris @andrefarzat l’a pris il y a 21 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 38/100
plotly/angular-plotly.js#283 ·
Les mainteneurs répondent en général sous 1 jour
-
Angular 20 standalone applicationPeut-être pris @andrefarzat l’a pris il y a 21 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
plotly/angular-plotly.js#281 · 8 commentaires · 2 réactions ·
Les mainteneurs répondent en général sous 1 jour
-
Angular 19 specs won't runOuverte
Difficulté 3/5 1-2 jours Accessibilité débutants 25/100
plotly/angular-plotly.js#278 · 2 commentaires · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de plotly/angular-plotly.js
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
riverqueue/river#1576 ·
Les mainteneurs répondent en général sous 1 jour
-
[bug] A prompt queued during a run is assessed without its textPeut-être pris @jwiegley l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
DevMortimer/pi-warden#211 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 1/5 Moins d'une heure Accessibilité débutants 84/100
mattermost/compass-design#191 ·
Les mainteneurs répondent en général sous 1 jour
-
Add unit tests for the organization admin role checkPeut-être pris @SaffuSafwan l’a pris aujourd’hui. Ouvertearea/core good first issue help wanted
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
elmohq/elmo#1095 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
HorusGoul/trizum#559 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour