Salta el contingut

Triar el gràfic adequat

Exercici choosing-the-right-chart-annex.pdf · PDF

Ja has construït sis tipus de gràfic: barres, línies, histograma, dispersió, sectors i mapa de calor. Cada vegada, algú t'ha dit quin havies de fer. Ara et cau a la taula una pregunta nova: "Els jocs ben valorats venen més?" Quin dels sis obres?

La majoria de gent respon amb el gràfic que més li agrada. Això és triar una eina pel seu color. En aquesta lliçó deixes de triar per gust: decideix la pregunta, i aprens a llegir què demana.

Què aprendràs

  • Classificar qualsevol pregunta com a comparació, evolució, distribució, relació o composició
  • Anomenar les columnes que toca una pregunta i el seu tipus de dada: categoria, número o data
  • Triar el gràfic a partir d'una taula de decisió i justificar-lo en una frase
  • Detectar dues trampes: una composició amb massa parts, i una pregunta que no necessita cap gràfic
  • Construir un mapa de calor i un diagrama de dispersió a Superset a partir d'una pregunta escrita, sense recepta per al tipus de gràfic

El bloc decideix l'eina

Al joc de creació d'aquest mòdul, ningú no pica pedra amb una pala. El bloc que tens al davant ho decideix: pic per a la pedra, destral per a la fusta, pala per a la terra. Picar, tallar i cavar són feines diferents, i cada feina té la seva eina.

Els gràfics funcionen igual. Mantenim aquesta analogia per a tota la pàgina:

Al joc Al treball amb dades Exemple
El bloc que tens al davant La pregunta que algú et fa "Quin editor ha llançat més jocs?"
La feina (picar, tallar, cavar) El tipus de pregunta Comparació
El material de què és fet el bloc Les columnes que toca la pregunta, i el seu tipus publisher (categoria) i un recompte (número)
L'eina El gràfic Gràfic de barres

Així doncs, cada pregunta es llegeix dues vegades abans de tocar Superset:

  • Quin tipus de pregunta és? Hi ha cinc feines.
  • Quines columnes toca, i de quin tipus?

Amb aquestes dues respostes, el gràfic ja no és qüestió d'opinió.

Cinc feines que pot demanar una pregunta

El tipus de pregunta és el que el lector vol fer amb els números: ordenar-los, seguir-los en el temps, veure com es reparteixen, veure si dos es mouen junts, o veure com un tot es divideix en parts.

Feina La pregunta sona així Exemple a games_clean
Comparació "Quin en té més?" "Qui és el primer?" Quins deu editors han llançat més jocs?
Evolució "Com ha canviat al llarg del temps?" Com ha canviat el nombre de jocs llançats per any?
Distribució "Com es reparteixen els valors?" "Què és típic?" Com es reparteixen els preus dels jocs de pagament?
Relació "Quan un puja, l'altre també?" Els jocs amb millor Metascore arriben a més propietaris?
Composició "Quina part del tot és cada element?" Quina part del catàleg és Niche, Mid i Hit?

Aquí tens les cinc feines, més un sisè panell que trobaràs d'aquí a un moment, tots dibuixats a partir de la mateixa taula de 26,685 jocs de Steam:

Sis gràfics petits dibuixats a partir de la taula games_clean, un per tipus de pregunta: un gràfic de barres dels cinc editors més grans, un gràfic de línies dels jocs llançats per any, un histograma de preus, un diagrama de dispersió del Metascore enfront dels propietaris mitjans, un gràfic de sectors dels tres nivells de propietaris i un mapa de calor de la franja de preu per nivell de propietaris

Una taula, sis imatges completament diferents. Cap d'elles és "el gràfic dels jocs". Cadascuna és la resposta a una pregunta diferent.

D'on surten aquestes cinc feines?

No són una regla d'aquest curs. El 2006, Andrew Abela va publicar un diagrama d'una pàgina, Chart Suggestions: A Thought-Starter, que parteix d'una pregunta, "Què voldries mostrar?", i ofereix quatre respostes: comparació, distribució, composició i relació. Nosaltres hem separat la "comparació al llarg del temps" en una feina pròpia, l'evolució, perquè és la que trobaràs més sovint.

Llegeix el material: tres tipus de columna

Una feina és només la meitat de la decisió. Un pic serveix per picar, però encara has de saber si el bloc és pedra o obsidiana.

El tipus de dada d'una columna diu quina mena de valors conté. Per triar un gràfic en tenim prou amb tres tipus: categoria, número i data.

Tipus Què conté A games_clean A pokemon
Categoria Text amb un conjunt limitat de valors. Els pots comptar, no sumar. owners_tier, price_band, publisher type_1
Número Una quantitat mesurada. La pots sumar i fer-ne la mitjana. price, metascore, owners_min attack, weight
Data Un punt en el temps. Té un ordre i una distància entre valors. release_date cap

Dues columnes poden ser totes dues categories i comportar-se de manera molt diferent. owners_tier té 3 valors. publisher en té 13,951. Recorda aquest número: és la trampa d'aquesta lliçó.

Compte: un any no és només un número

release_year s'emmagatzema com un enter, així que és temptador dir "any contra jocs: dos números, un diagrama de dispersió". Però un any és un punt en el temps: la feina és l'evolució i l'eina és una línia. Un diagrama de dispersió necessita dos números mesurats per a cada cosa, com el preu i el Metascore d'un joc.

La taula de decisió

Junta les dues lectures i tens la taula de sota. Tingues-la a mà: és el full de trucs per a la resta de la unitat.

Feina La pregunta sona així Columnes que toca Gràfic (nom a Superset)
Comparació "Quin en té més?" 1 categoria + 1 número Bar Chart
Evolució "Com ha canviat al llarg del temps?" 1 data + 1 número Line Chart
Distribució "Com es reparteixen els valors?" 1 número Histogram
Relació "Quan un puja, l'altre també?" 2 números Scatter Plot
Composició "Quina part del tot és cada element?" 1 categoria, 5 parts o menys Pie Chart
Composició, moltes parts El mateix, amb 6 parts o més 1 categoria, molts valors Bar Chart, ordenat
Comparació, de dues maneres "Quina combinació en té més?" 2 categories + 1 número Heatmap
Sense feina per a un gràfic "Quants n'hi ha en total?" "Quin és exactament el valor de...?" 1 número, o valors exactes Big Number, Table

La mateixa taula com un camí que pots seguir amb el dit:

flowchart TB
    Q["<b>La pregunta</b><br>(el bloc que tens al davant)"] --> ONE{"La resposta és un número,<br>o una llista de valors exactes?"}
    ONE -- "sí" --> BIG["<b>Big Number o Table</b><br>no cal cap gràfic"]
    ONE -- "no" --> JOB{"Quina és la feina?"}
    JOB -- "qui en té més?" --> CMP{"Quantes columnes<br>de categoria?"}
    CMP -- "una" --> BAR["<b>Bar Chart</b>"]
    CMP -- "dues" --> HEAT["<b>Heatmap</b>"]
    JOB -- "com ha canviat<br>al llarg del temps?" --> LINE["<b>Line Chart</b>"]
    JOB -- "com es reparteixen<br>els valors?" --> HIST["<b>Histogram</b>"]
    JOB -- "dos números<br>es mouen junts?" --> SCAT["<b>Scatter Plot</b>"]
    JOB -- "quina part és<br>cada element?" --> PARTS{"Quantes parts?"}
    PARTS -- "5 o menys" --> PIE["<b>Pie Chart</b>"]
    PARTS -- "6 o més" --> SBAR["<b>Bar Chart</b>, ordenat"]

Superset també ordena els gràfics per feina

Obre Charts → + Chart i mira la llista Category a l'esquerra de la galeria de gràfics: Evolution, Distribution, Correlation, Part of a Whole, KPI... La coincidència amb la nostra taula no és perfecta. Superset arxiva el Bar Chart i el Scatter Plot sota Evolution, i el Heatmap sota Correlation. Fia't de la pregunta, no del calaix on l'eina és col·locada.

Trampa 1: un tot tallat en massa parts

"Com es reparteix el catàleg entre editors?" La feina és la composició, així que la mà se't va cap al gràfic de sectors. Atura't i compta primer les parts:

SELECT COUNT(DISTINCT publisher) FROM games_clean;

La resposta és 13951. Prova de tallar un cercle en 13,951 trossos. La feina és correcta; el material no encaixa amb l'eina.

Compara dues composicions. La primera té tres parts i és un gràfic de sectors perfectament bo:

pie showData
    title Jocs de Steam per nivell de propietaris
    "Niche" : 17921
    "Mid" : 8141
    "Hit" : 623

La segona és com es reparteixen els 949 Pokémon de la taula de classe per tipus primari. Divuit parts. Com a gràfic de sectors serien divuit trossos fins i una llegenda que llegeixes amb regle. Com a gràfic de barres ordenat veus la resposta d'un cop: water i normal van al davant, flying és gairebé buit.

%%{init: {"themeVariables": {"xyChart": {"plotColorPalette": "#4051b5"}}}}%%
xychart-beta horizontal
    title "Pokémon per tipus primari (18 parts: barres ordenades, no un gràfic de sectors)"
    x-axis [water, normal, grass, bug, rock, psychic, electric, fire, ghost, dragon, dark, ground, poison, fighting, steel, ice, fairy, flying]
    y-axis "Nombre de Pokémon" 0 --> 130
    bar [126, 111, 84, 79, 65, 64, 61, 59, 40, 39, 37, 36, 35, 31, 30, 29, 19, 4]

La regla: amb cinc parts o menys, un gràfic de sectors. Amb sis o més, compara les parts més grans amb un gràfic de barres ordenat. Per als editors, és exactament el gràfic de barres dels 10 primers que vas construir a Gràfics de barres i de línies: mateixes columnes, eina honesta.

Compte: un gràfic de sectors no és 'el gràfic dels percentatges'

Un gràfic de sectors és per a les parts d'un sol tot, i només unes poques. La part de jocs gratuïts a cada any són quinze percentatges separats que no sumen 100: són quinze números al llarg del temps, per tant una línia. Els percentatges sols mai no volen dir "gràfic de sectors".

Trampa 2: una pregunta que no necessita cap gràfic

"Quants jocs hi ha a la taula?"

SELECT COUNT(*) FROM games_clean;

26685. Un número. No hi ha res a ordenar, res a seguir en el temps, res a repartir. No tots els blocs necessiten un pic de diamant.

El lector necessita Mostra
Un número ("quants", "quant en total") Un Big Number: el valor, gran, amb una etiqueta
Valors exactes per consultar ("quin és exactament el preu de...?") Una Table
Un patró, una classificació, una tendència, una forma Un gràfic

Un gràfic serveix per veure un patró. Si no hi ha cap patró a veure, un gràfic només alenteix el lector.

Pràctica: vuit preguntes, vuit decisions

Abans d'obrir Superset, prova aquestes en paper. Per a cadascuna escriu tres coses: la feina, les columnes i el seu tipus, el gràfic. Dues de les vuit són trampes.

# Pregunta sobre games_clean
1 Com ha canviat el nombre de jocs llançats per any entre 2004 i 2018?
2 Quins deu editors han llançat més jocs?
3 Com es reparteixen els preus dels jocs de pagament (fins a 60 dòlars)?
4 Els jocs amb millor Metascore arriben a més propietaris?
5 Quina part del catàleg és Niche, Mid i Hit?
6 Quina combinació de franja de preu i nivell de propietaris conté més jocs?
7 Com es reparteix el catàleg entre editors?
8 Quants jocs hi ha a la taula?
Comprova les teves respostes
# Feina Columnes Gràfic Què mostra
1 Evolució release_date (data) + un recompte Line Chart 53 jocs el 2004, 556 el 2013, 1,352 el 2014, 8,845 el 2018
2 Comparació publisher (categoria) + un recompte Bar Chart Big Fish Games 284, SEGA 141, Strategy First 129, Ubisoft 123, Square Enix 95
3 Distribució price (número) Histogram 23,508 jocs de pagament; 11,613 costen menys de 5 dòlars. Una cua llarga cap a la dreta
4 Relació metascore + owners_min (2 números) Scatter Plot Punts que pugen cap a la dreta
5 Composició owners_tier (categoria, 3 parts) Pie Chart Niche 67.2%, Mid 30.5%, Hit 2.3%
6 Comparació, de dues maneres price_band + owners_tier (2 categories) + un recompte Heatmap 15 cel·les; la més gran és Under 5 × Niche amb 8,884 jocs
7 Composició, moltes parts publisher (categoria, 13,951 parts) Bar Chart, ordenat Sense gràfic de sectors. És el gràfic de la pregunta 2
8 Sense feina per a un gràfic un recompte Big Number 26,685

Prova-ho: construeix-ne dos

Les preguntes 1 i 2 ja les domines de Gràfics de barres i de línies. Les preguntes 6 i 4 són blocs nous: coneixes les eines, i ara saps per què triar-les. Necessites el dataset games_clean a Superset (els fitxers són a la pàgina de Recursos).

Pregunta 6: franja de preu per nivell de propietaris. Dues categories i un número: un mapa de calor.

Pas Fes això Hauries de veure
1 Charts → + Chart. Dataset games_clean, tipus de gràfic Heatmap, Create new chart. La vista Explore amb un gràfic buit.
2 X-axis: price_band. Y-Axis: owners_tier. Metric: COUNT(*). Tres controls emplenats.
3 Sort X Axis i Sort Y Axis: Axis ascending. Create chart. Una quadrícula de 5 × 3 = 15 cel·les.
4 Pestanya Customize → marca Show Values; Value Format: ,d. Un número a cada cel·la. Sense el format es llegeixen 8.88k.
5 Save → nom del gràfic UT3 · Price band by owners tier. La cel·la més fosca és Under 5 × Niche amb 8,884.

Pregunta 4: Metascore contra propietaris. Dos números: un diagrama de dispersió.

Pas Fes això Hauries de veure
1 Gràfic nou sobre games_clean, tipus de gràfic Scatter Plot. La vista Explore.
2 X-axis: metascore. Metrics: pestanya Simple → columna owners_min, agregat AVG. Una mètrica, AVG(owners_min).
3 Filters → metascore → operador Is not null → Save. Create chart. 73 punts que pugen cap a la dreta.
4 Passa el cursor per sobre del punt més alt. Metascore 96, uns 7.3 milions de propietaris de mitjana.
5 Save → nom del gràfic UT3 · Metascore vs average owners. El gràfic a la teva llista Charts.
Per què 73 punts i no 2,849?

Només 2,849 dels 26,685 jocs tenen Metascore, i el Scatter Plot de Superset no dibuixa un punt per joc: dibuixa un punt per valor de la columna de l'eix X i necessita una mètrica per a l'alçada. Així que obtens un punt per a cadascun dels 73 valors diferents de Metascore, situat a la mitjana de propietaris dels jocs amb aquella puntuació. Els punts de l'extrem dret fan la mitjana de molt pocs jocs (només tres jocs tenen un 96), per això salten. Joc per joc la relació és feble: la correlació entre Metascore i propietaris és només de 0.14.

Si alguna cosa no quadra
  • El mapa de calor mostra una cel·la o una fila: un de X-axis / Y-Axis és buit. Tots dos necessiten una columna de categoria.
  • Les columnes del mapa de calor surten en un ordre estrany: Sort X Axis és buit, així que les cel·les surten en l'ordre que torna la base de dades. Posa Axis ascending.
  • Les franges de preu es llegeixen 15 to 30, 30 or more, 5 to 15, Free...: de moment és correcte. Axis ascending ordena el text alfabèticament. Donaràs a les franges el seu ordre natural a la lliçó següent.
  • El diagrama de dispersió mostra un sol punt: metascore ha anat a Dimensions en lloc de X-axis.
  • L'etiqueta de sobre del diagrama de dispersió diu 74 rows: falta el filtre Is not null. El grup 74 són els 23,836 jocs sense Metascore, que no tenen lloc a l'eix X.

Idees clau

  • La pregunta tria el gràfic, no el teu gust. Llegeix-la dues vegades: el tipus de pregunta (la feina) i el tipus de dada de les columnes (el material).
  • Cinc feines: comparació (barres), evolució (línies), distribució (histograma), relació (dispersió), composició (sectors).
  • Tres tipus de columna són suficients: categoria, número, data. Un any és un punt en el temps, no un número mesurat.
  • Dues categories i un número és un mapa de calor: una comparació feta de dues maneres alhora.
  • Una composició amb sis parts o més no és un gràfic de sectors: fes servir un gràfic de barres ordenat.
  • Si la resposta és un número o una llista de valors exactes, mostra un Big Number o una Table. No totes les preguntes necessiten un gràfic.

Comprovació ràpida

1. 'Com ha canviat el preu mitjà dels jocs nous des de 2004?' Quina feina és aquesta, i quin gràfic la fa?
  • Evolució: un gràfic de línies
  • Comparació: un gràfic de barres
  • Distribució: un histograma
  • Relació: un diagrama de dispersió

"Ha canviat des de" vol dir temps: una data i un número. Això és evolució, i la seva eina és el gràfic de línies. Un histograma mostraria com es reparteixen els preus, sense temps.

2. Abans de triar un gràfic, quines dues coses llegeixes a la pregunta?
  • El tipus de pregunta, i les columnes que toca amb el seu tipus de dada
  • La mida de la taula, i els colors del quadre de comandament
  • El gràfic que vas fer l'última vegada, i el que queda millor
  • El nom del dataset, i quants filtres té

La feina (comparació, evolució, distribució, relació, composició) i el material (categoria, número, data). Junts apunten a una fila de la taula de decisió.

3. Una pregunta toca dues columnes de categoria i un número: 'Quina combinació de franja de preu i nivell de propietaris conté més jocs?' Quin gràfic?
  • Gràfic de sectors
  • Diagrama de dispersió
  • Mapa de calor
  • Histograma

Dues categories fan una quadrícula i el número omple cada cel·la: això és el mapa de calor, la fila de "comparació, de dues maneres". Un diagrama de dispersió necessita dos números, no dues categories.

4. 'Com es reparteix el catàleg entre editors?' Hi ha 13,951 editors. Què dibuixes?
  • Un gràfic de sectors, perquè la feina és la composició
  • Un gràfic de barres ordenat dels editors més grans
  • Un gràfic de línies amb un punt per editor
  • Un diagrama de dispersió d'editors contra jocs

La feina és la composició, però un gràfic de sectors només funciona amb cinc parts o menys. Amb moltes parts compares les més grans amb un gràfic de barres ordenat. Una línia entre editors suggeriria una tendència d'una empresa a la següent, cosa que no vol dir res.

5. Per què 'jocs llançats per any' no és un diagrama de dispersió, tot i que release_year s'emmagatzema com un número?
  • Perquè els diagrames de dispersió no poden mostrar més de deu punts
  • Perquè Superset no té diagrama de dispersió
  • Perquè un any és un punt en el temps: la feina és l'evolució, i una dispersió necessita dos números mesurats
  • Perquè els anys s'han de mostrar sempre en un gràfic de sectors

El tipus de dada que importa és el que la columna significa, no com s'emmagatzema. Un any ordena les dades en el temps, així que la pregunta és sobre evolució. Un diagrama de dispersió és per a la relació entre dues quantitats mesurades, com el preu i el Metascore.

6. 'Quants jocs hi ha a la taula?' Quina és la manera correcta de mostrar la resposta?
  • Un gràfic de barres amb una barra
  • Un gràfic de sectors amb un tros
  • Un histograma
  • Un Big Number: 26,685

Un número no té cap patró a veure. Mostra'l gran, amb una etiqueta. Un gràfic amb una sola barra afegeix tinta i cap informació.

7. Un servei de streaming pregunta: 'En quins mesos de l'any es veuen més hores, i ha canviat això d'un any a l'altre?' Tria les dues afirmacions certes.
  • La pregunta toca dues categories (mes i any) i un número (hores)
  • Un mapa de calor amb els mesos en un eix i els anys a l'altre la respon
  • Un gràfic de sectors amb un tros per mes i any la respon
  • No necessita cap gràfic: un Big Number és suficient

Mes i any es fan servir aquí com a dues categories que es creuen, amb les hores com a número: la fila de "comparació, de dues maneres", un mapa de calor. Un gràfic de sectors tindria desenes de trossos, i un sol número gran no pot mostrar un patró entre mesos i anys. Si només haguessin preguntat com han canviat les hores al llarg del temps, seria evolució: una línia.

Ja pots triar l'eina adequada per a qualsevol bloc. Però el gràfic adequat encara pot ser il·legible: sense títols, un eix en 2k i 4k, una llegenda que diu COUNT(*). A continuació: Configurar gràfics a Superset, on el gràfic aprèn a explicar-se.