Calcolatore plus-minus basket
Il plus-minus è il numero più semplice e onesto della pallacanestro: prenda i punti segnati dalla squadra di un giocatore mentre era in campo, sottragga i punti segnati dagli avversari nello stesso intervallo, e otterrà il plus-minus grezzo del giocatore.
Esegui gratis nel browser
Una cifra positiva significa che la squadra ha superato gli avversari in quei minuti; una negativa, che è stata superata. Questo calcolatore di plus-minus per il basket esegue esattamente questa aritmetica in una sola chiamata deterministica. Lei invia i due totali di punti e riceve il differenziale insieme a un verdetto chiaro: positivo, negativo o pari. Funziona gratuitamente nel Suo browser su questa pagina e costa $0.002 per richiesta tramite l'API.
Cosa misura davvero il plus-minus
Il tabellino dice che cosa ha fatto un giocatore: punti, rimbalzi, assist. Il plus-minus pone una domanda diversa: che cosa è successo al punteggio mentre quel giocatore era in campo? Se una squadra segna 58 punti e ne subisce 51 durante i ventidue minuti di un playmaker, il plus-minus di quel playmaker è +7, indipendentemente dal fatto che abbia segnato due punti o trenta. La metrica, volutamente, accredita e addebita al giocatore tutto ciò che accade nei suoi minuti, comprese le giocate che non arrivano mai al tabellino: un blocco che libera un compagno, una rotazione anticipata che uccide un contropiede, o semplicemente l'ampiezza data al campo perché l'attacco respiri. Questa ampiezza è al tempo stesso la forza e il limite noto della statistica. Una riserva che condivide ogni turno con una stella eredita parte dell'impatto di quella stella, e un titolare intrappolato in un quintetto sbagliato assorbe danni che non sono suoi. Per questo gli allenatori leggono il plus-minus come un punto di partenza per le domande, non come un verdetto finale, e questo calcolatore resta fedele a quello spirito restituendo il differenziale grezzo, senza correzioni nascoste.
Come funziona qui il calcolo
L'endpoint accetta due campi: i punti segnati dalla squadra del giocatore mentre era in campo, e i punti segnati dagli avversari nello stesso intervallo. Entrambi devono essere interi non negativi, perché un punteggio di pallacanestro non può essere negativo e il punto frazionario non esiste. Il valore restituito è il primo numero meno il secondo, più un breve verdetto che classifica il risultato come positivo, negativo o pari. Gli input arrivano direttamente da un referto o da un flusso di tracciamento: la maggior parte dei dati azione per azione etichetta già ogni canestro con i giocatori in campo, quindi i totali in campo di qualsiasi giocatore sono un semplice filtro seguito da una somma. Poiché l'aritmetica è fissa e deterministica, gli stessi due input producono sempre lo stesso output, nel widget del browser come nell'API a pagamento: il risultato web gratuito è, byte per byte, quello per cui l'API addebita $0.002. Se uno dei valori è negativo o non è un numero intero, la richiesta viene rifiutata con un chiaro errore di input non valido e non viene fatturata.
Leggere e usare il numero con criterio
Il plus-minus di una singola partita è rumoroso. I minuti di garbage time di una goleada, i cambi avversari e le serie di tiri riusciti spingono il numero in ogni direzione; per questo gli analisti lo aggregano su molte partite prima di trarre conclusioni, oppure passano a varianti corrette che tengono conto di compagni e avversari. Eppure il differenziale grezzo ha usi quotidiani reali. Un allenatore può confrontare come si è mosso il punteggio con diverse combinazioni di giocatori durante una partita tirata. Un osservatore può verificare se il tabellino discreto di un gregario nascondeva un forte impatto in campo. Un documentarista televisivo può ottenere una cifra rapida per il blocco post-partita senza aprire un foglio di calcolo. E uno sviluppatore che costruisce una dashboard statistica può chiamare questo endpoint come un componente piccolo e verificabile, invece di reimplementare la validazione ogni volta. L'abitudine importante è accompagnare il differenziale con il contesto: i minuti giocati, il ritmo della partita e la qualità dei quintetti coinvolti. Questo strumento Le fornisce il numero in modo pulito e veloce; l'interpretazione resta dove deve restare, alla persona che lo legge.
Casi d'uso
Analisi dei quintetti dopo la partita
Lo staff tecnico inserisce i punti a favore e contro di ogni giocatore dal registro azione per azione e ottiene il plus-minus di tutti in pochi secondi.
Widget per una dashboard statistica
Uno sviluppatore aggiunge una colonna plus-minus alla dashboard analitica della squadra chiamando l'endpoint per giocatore, riutilizzando la sua validazione invece di scriverne una propria.
Ricerca per le telecronache
Un documentarista televisivo calcola un differenziale rapido per il blocco dell'intervallo senza lottare con un foglio di calcolo durante la diretta.
Domande frequenti
Quanto costa?
$0.002 per richiesta tramite l'API. È anche gratuito eseguirlo nel Suo browser su questa pagina, con risultati identici.
Di quali dati ha bisogno?
Di due numeri: i punti segnati dalla Sua squadra mentre il giocatore era in campo, e quelli segnati dagli avversari nello stesso intervallo. Entrambi devono essere interi non negativi.
Cosa succede se invio un valore negativo?
La richiesta viene rifiutata con un errore di input non valido che indica quale campo è sbagliato. Le richieste rifiutate non vengono fatturate.
È la stessa cosa del plus-minus corretto?
No. Questo è il plus-minus grezzo: punti della squadra meno punti degli avversari durante i minuti del giocatore. Le varianti corrette, che scontano compagni e avversari, sono un calcolo separato e molto più pesante.
Posso inviare i valori come testo?
Sì. Le stringhe di numeri interi come "58" vengono accettate e interpretate. Decimali, valori negativi e testo non numerico vengono rifiutati.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/sports/plus-minus-calculate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"team_points":58,"opponent_points":51}'const res = await fetch("https://api.kit.forhosting.com/sports/plus-minus-calculate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"team_points": 58,
"opponent_points": 51
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/sports/plus-minus-calculate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"team_points": 58,
"opponent_points": 51
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/sports/plus-minus-calculate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"team_points":58,"opponent_points":51}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"team_points":58,"opponent_points":51}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/sports/plus-minus-calculate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"team_points": 58,
"opponent_points": 51
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "sports.plus_minus_calculate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |