Ajout de la possibilité de simuler le retrait de la barre de 5 %
This commit is contained in:
parent
f413c8c130
commit
eed4dc18fb
@ -112,6 +112,7 @@ export default function Election2024({typeResultats = "france"}) {
|
|||||||
const {zoneId} = useParams()
|
const {zoneId} = useParams()
|
||||||
|
|
||||||
const [grouperParBloc, setGrouperParBloc] = useState(false)
|
const [grouperParBloc, setGrouperParBloc] = useState(false)
|
||||||
|
const [retirerSeuil, setRetirerSeuil] = useState(false)
|
||||||
const [blocs, setBlocs] = useState([])
|
const [blocs, setBlocs] = useState([])
|
||||||
const [nuances, setNuances] = useState([])
|
const [nuances, setNuances] = useState([])
|
||||||
const [listes, setListes] = useState([])
|
const [listes, setListes] = useState([])
|
||||||
@ -189,7 +190,7 @@ export default function Election2024({typeResultats = "france"}) {
|
|||||||
let totalVoix = resultats.exprimes
|
let totalVoix = resultats.exprimes
|
||||||
for (let liste of listes) {
|
for (let liste of listes) {
|
||||||
const voix = resultats.voix_listes[liste.numero] || 0
|
const voix = resultats.voix_listes[liste.numero] || 0
|
||||||
if (voix / resultats.exprimes < 0.05) {
|
if (voix / resultats.exprimes < 0.05 && !retirerSeuil) {
|
||||||
// Barre des 5 % non franchie
|
// Barre des 5 % non franchie
|
||||||
totalVoix -= voix
|
totalVoix -= voix
|
||||||
sieges[liste.numero] = 0
|
sieges[liste.numero] = 0
|
||||||
@ -227,7 +228,7 @@ export default function Election2024({typeResultats = "france"}) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
setSiegesParListe(sieges)
|
setSiegesParListe(sieges)
|
||||||
}, [resultats])
|
}, [resultats, retirerSeuil])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const parBloc = {}
|
const parBloc = {}
|
||||||
@ -314,6 +315,10 @@ export default function Election2024({typeResultats = "france"}) {
|
|||||||
<FormControlLabel control={<Switch checked={grouperParBloc} onChange={event => setGrouperParBloc(event.target.checked)} inputProps={{ 'aria-label': 'controlled' }} />}
|
<FormControlLabel control={<Switch checked={grouperParBloc} onChange={event => setGrouperParBloc(event.target.checked)} inputProps={{ 'aria-label': 'controlled' }} />}
|
||||||
label="Grouper par bloc plutôt que nuance politique" />
|
label="Grouper par bloc plutôt que nuance politique" />
|
||||||
</FormGroup>
|
</FormGroup>
|
||||||
|
<FormGroup>
|
||||||
|
<FormControlLabel control={<Switch checked={retirerSeuil} onChange={event => setRetirerSeuil(event.target.checked)} inputProps={{ 'aria-label': 'controlled' }} />}
|
||||||
|
label="Retirer le seuil des 5 %" />
|
||||||
|
</FormGroup>
|
||||||
<HighchartsReact
|
<HighchartsReact
|
||||||
id="composition-eurodeputees"
|
id="composition-eurodeputees"
|
||||||
highcharts={Highcharts}
|
highcharts={Highcharts}
|
||||||
|
Loading…
Reference in New Issue
Block a user