Datenvisualisierung mit Plotly Teil II
Rekapitulieren
Zuvor haben wir an der Erstellung eines Balkendiagramms gearbeitet, um die Generationenpopulationen im Geburtsjahr mit einer Rangfolge nach der höchsten Anzahl lebender Personen zu visualisieren. Die Daten stammen aus der US-Volkszählung 2019, die das Alter und die Gesamtbevölkerung der USA in diesem Alter enthielt. Zum Lesen und Verarbeiten der Daten haben wir die Pandas-Bibliothek verwendet.
Wir haben die update_traces-Methode von Plotly verwendet, um das Erscheinungsbild des Diagramms zu aktualisieren, einschließlich seiner Hintergrundfarbe, Markierungen und Achsentitel. Wir haben auch die update_layout-Methode von Plotly verwendet, um den Diagrammtitel in x-Richtung anzupassen. Das Endergebnis war ein optisch ansprechendes Balkendiagramm, das die in den Daten enthaltenen Informationen effektiv vermittelte.
Zeit, unser Plotly-Diagramm auf die nächste Stufe zu bringen! Fügen wir etwas Flair und Stil hinzu, um daraus die optisch beeindruckendste Karte der Stadt zu machen. Es ist Zeit, den Schwung in die Luft zu holen!
Okay Leute, es ist Zeit, konkret zu werden! Lassen Sie uns den Sweet Spot der Generationen ausfindig machen und sehen, wie die Millennials (1981–1997) im Vergleich zum Rest abschneiden. Es ist an der Zeit, diesem Balkendiagramm etwas Präzision zu verleihen und den Millennials die gebührende Anerkennung (oder die Schuld, je nach Sichtweise) zu geben.
Zuerst verwenden wir die add_vlineMethode zum Hinzufügen vertikaler Linien und die add_annotationMethode zum Beschriften jeder Zeile mit dem Jahr. Es ist, als würde man die Regentschaften der verschiedenen Generationen ins Rampenlicht rücken.
# Step 6 - Specifying Generation Reigns
datetoannote = [1927.5, 1945.5, 1964.5, 1980.5, 1996.5, 2012.5]
for i in datetoannote:
fig.add_vline(
x=i,
fillcolor="black", opacity=1,layer="above", line_width=2,
line_dash="dot"
)
fig.add_annotation(
text=str(int(i+0.5)),
xref="x", yref="y",textangle=270,
x=i+1, y=4800000, showarrow=False
)
# step 7 adding annotation
y = 6600000
y_toadd = 200000
fig.add_annotation(
text="#7<br><b>GREATEST <br> GENERATION</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=1920, y=y, showarrow=False
)
fig.add_annotation(
text="#6<br><b>SILENT <br> GENERATION</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=1937, y=y, showarrow=False
)
fig.add_annotation(
text="#2<br><b>BOOMERS</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=1955, y=y+y_toadd, showarrow=False
)
fig.add_annotation(
text="#4<br><b>GENERATION X</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color = 'black'),
align = 'center', x=1972.5, y=y+y_toadd, showarrow=False
)
fig.add_annotation(
text="#1<br><b>MILLENNIALS</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=1988.5, y=y+y_toadd, showarrow=False
)
fig.add_annotation(
text="#3<br><b>GENERATION Z</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=2004.5, y=y+y_toadd, showarrow=False
)
fig.add_annotation(
text="#5<br><b>GENERATION <br> ALPHA</b><br>",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=14,color='black'),
align = 'center', x=2020, y=y, showarrow=False
)
fig.add_annotation(
text="1.7M | 0.5%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=1920, y=5550000, showarrow=False
)
fig.add_annotation(
text="23.2M | 7.1%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=1937, y=5550000, showarrow=False
)
fig.add_annotation(
text="71.6M | 21.8%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=1955, y=5550000, showarrow=False
)
fig.add_annotation(
text="65.2M | 19.9%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=1973, y=5550000, showarrow=False
)
fig.add_annotation(
text="72.1M | 22.0%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=1989, y=5550000, showarrow=False
)
fig.add_annotation(
text="66.9M | 20.4%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=2005, y=5550000, showarrow=False
)
fig.add_annotation(
text="27.6M | 8.4%",
xref="x", yref="y",textangle=0,
font=dict(family="Trebuchet MS",size=12,color='black'),
x=2020, y=5550000, showarrow=False
)
fig.add_annotation(
text=" Total %POP.",
font=dict(family="Courier New, monospace",size=11,color = 'black'),
xref="x", yref="y",textangle=0,align="center",
x=1920, y=5200000, showarrow=False
)
fig.add_annotation(
text="Those born before<br> 1920 were grouped<br> together",
font=dict(family="Courier New, monospace",size=10,color = 'black'),
xref="x", yref="y",textangle=0,align="right",
x=1919, y=100322, showarrow=True
)
# Step 8 - update axes
fig.update_xaxes(
range=[1915,2020],
showline=True,
linecolor='black',
linewidth=3,
showgrid=False,
layer='above traces',
showticklabels=True,
tickmode = 'array',
tickvals = [1920, 1930, 1940, 1950, 1960, 1970,
1980, 1990, 2000, 2010, 2019],
ticks="outside",
tickwidth=1.5,
tickcolor='black',
ticklen=10,
tickprefix = " ",
ticksuffix = " ",
fixedrange=True,
)
fig.update_yaxes(
showline = False,
showgrid=False,
fixedrange=True,
zeroline = False,
tickmode = 'array',
ticktext=[0, "1 ", "2 ", "3 ", "4 "],
tickvals = [0, 1000000, 2000000, 3000000, 4000000],
ticks="inside",
tickwidth=1,
tickcolor='black',
ticklen=10,
)
#updating fig size, margin and titles
fig.update_layout(
height=700,
margin=dict(t=120, l=60, r=60, b=60, pad = 0),
title="",
yaxis_title="",
xaxis_title=""
)
fig.add_annotation(
text="BIRTH YEAR",
xref="paper", yref="paper",
x=0.01, y=-0.09, showarrow=False
)
fig.add_annotation(
text="MILLION PEOPLE",
xref="paper", yref="paper",
x=-0.02, y=0.65, showarrow=False
)
fig.add_annotation(
text="Compiled from population estimates from the\
United States Census Bureau for July 2019",
xref="paper", yref="paper",
font=dict(family="Courier",size=11,color = 'black'),
x=1.05, y=-0.12, showarrow=False
)
fig.add_shape(
type="rect",x0=0.02, y0=1.09, x1=0.03, y1=1.15,
xref='paper', yref='paper',
line=dict(color='black',width=1),
fillcolor='black',opacity = 0.5
)
fig.add_annotation(
text="GENERATION POPULATIONS,",
xref='paper', yref='paper',x= 0.03,y=1.14,
textangle=0,align="right",showarrow=False,
font=dict(size=25, family="Trebuchet MS", color="#00AD90")
)
fig.add_annotation(
text="WITH RANKINGS BY MOST NUMBER OF PEOPLE ALIVE",
xref='paper', yref='paper', x=0.61, y=1.125,
textangle=0,align="right",showarrow=False,
font=dict(size=15, family="Trebuchet MS", color="#00C3A9")
)
Und warum hier aufhören? Wir können so lange mit den Farben spielen, bis das Diagramm wie ein Regenbogen aussieht oder sich ein Einhorn darauf übergeben hat! Die Möglichkeiten sind endlos.
Nun Leute, das ist Schluss! Ich hoffe, Ihnen hat die Show gefallen und Sie haben etwas Neues gelernt. Wenn Sie dies hilfreich fanden, geben Sie ihm einen großen Daumen nach oben und teilen Sie mir Ihre Meinung in den Kommentaren mit. Bis zum nächsten Mal, viel Spaß beim Plotten.

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































