Ich fange an, Datenanalyse zu lernen und so weiter. Und da ich Dash gelernt habe, eines der Python-Frameworks, habe ich beschlossen, eine Site zu erstellen, die einige Daten mit Dash visualisiert. Ich werde den Prozess in diesem Artikel zusammenfassen!
** Ich habe beschlossen, die BIP-Daten zu visualisieren. ** Ich möchte die BIP-Daten nicht separat visualisieren, aber ich habe mir überlegt, welche Art von Daten ich visualisieren soll, aber mir fiel nichts ein, also ** Japan ** / ** Amerika ** / ** China Zusätzlich zu ** habe ich beschlossen, die BIP-Daten von ** Niederlande ** zu visualisieren, in denen ich jetzt lebe.
** BIP-Daten wurden von dieser Website gesammelt. GLOBAL NOTE ** (https://www.globalnote.jp/post-1409.html) Eigentlich wollte ich die kratzenden Daten mit Beutiful Soup visualisieren, indem ich sie in CSV-Daten ablegte, aber ich konnte die zusammenhängenden Daten, die ich mit offenen Daten visualisieren wollte, nicht wirklich finden.
Von dieser Site aus habe ich ** die Daten einzeln in Excel geschrieben und die CSV-Daten erstellt. ** ** **
python
import pandas as pd
gdp_data = pd.read_csv('GDP_data.csv', sep=';')
gdp_data.head()
・ Die Einheit ist eine Million US-Dollar.
python
gdp_data['Japan']
Auf diese Weise können die in der Spalte Japan gespeicherten Daten abgerufen werden.
Dash vorzubereiten ist sehr einfach. Befolgen Sie die Anweisungen auf der folgenden Website. Das heißt, ich mache nur eine Pip-Installation ... https://dash.plot.ly/installation
Von hier aus erstellen wir eine Datei, die die Daten mit Dash visualisiert. Die folgenden Elemente müssen mit den für die Verwendung von Dash erforderlichen Bibliotheken importiert werden.
visualise.py
import dash
import dash_core_components as dcc
import dash_html_components as html
import pandas as pd
import plotly.graph_objs as go
external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
if __name__ == '__main__':
app.run_server(debug=True)
external_stylesheets gibt den Speicherort des externen CSS an. Ich habe die generierte Instanz in die App eingefügt. Nach den if-Minuten wird die Funktion zum Einrichten des Servers ausgeführt. Wenn das Debuggen jedoch auf True gesetzt ist, ist dies praktisch, da Sie die angezeigte Site überprüfen können, während Sie Änderungen an dieser Datei vornehmen.
Wir werden hier Daten geben und diese visualisieren.
visualise.py
gdp_data = pd.read_csv('GDP_data.csv', sep=';')
Konvertieren Sie Daten von CSV in Datenrahmen, indem Sie diese nach dem Import einfügen.
app.layout = html.Div([
dcc.Graph(
id='gdp_graph',
figure = {
'data': [
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['Japan'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'red'
},
name='Japan'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['USA'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'blue'
},
name='USA'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['China'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'yellow'
},
name='China'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['Netherlands'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'black'
},
name='Netherlands'
)
]
}
)
])
Fügen Sie diese nach der App-Variablen ein. Es wird klar angegeben, dass das Diagramm mithilfe von go.Scatter als Layout in der App verwendet wird. Sie können die Daten visualisieren, indem Sie die Daten der x- und y-Achse in go.Scater einfügen. Lass uns einen Blick darauf werfen.
$ python3 visualise.py
Zu diesem Zeitpunkt wurde ein solches Diagramm fertiggestellt. Es sieht sehr gut aus und ist einfach! ?? Es ist sehr gut, dass einige Grafiken bereits mit nützlichen Funktionen implementiert wurden. (Wenn Sie Japan drücken, verschwindet nur das Japan-Diagramm.)
'layout': go.Layout(
xaxis = {'title': 'Time'},
yaxis = {'title': 'GDP'},
width = 1000,
height = 500
)
Sie können das Layout für die angezeigten Daten auch anzeigen, indem Sie "Layout" nach "Daten" hinzufügen. Ich konnte die Y- und X-Achse benennen! des Weiteren...
html.H1(
children='GDP Graph',
style = {
'textAlign': 'center',
'color': 'black',
}),
html.Div(
children='''
You can easily visualise data by using DASH framework.
Here, you can understand the flow of GDP change in graph.
''',
style = {
'textAlign': 'center',
'color': 'black',
}),
Sie können der App auch HTML-Elemente hinzufügen. Sie können leicht Erklärungen usw. hinzufügen. Kurushunai
Diesmal habe ich eine kleine Datenvisualisierungsseite erstellt. Der Einstieg ist immer noch einfach, aber die Stärke von Python besteht darin, dass Sie selbst mit dieser Art von Wissen Daten relativ gut visualisieren können.
import dash
import dash_core_components as dcc
import dash_html_components as html
import pandas as pd
import plotly.graph_objs as go
gdp_data = pd.read_csv('GDP_data.csv', sep=';')
gdp_data = gdp_data.rename(columns = {'Unnamed: 0': 'Time'})
gdp_data = gdp_data.drop('Unnamed: 5', axis=1)
gdp_data = gdp_data.drop('Unnamed: 6', axis=1)
external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)
server = app.server
app.layout = html.Div(children=[
html.H1(
children='GDP Graph',
style = {
'textAlign': 'center',
'color': 'black',
}),
html.Div(
children='''
You can easily visualise data by using DASH framework.
Here, you can understand the flow of GDP change in graph.
''',
style = {
'textAlign': 'center',
'color': 'black',
}),
dcc.Graph(
id='gdp_graph',
figure = {
'data': [
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['Japan'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'red'
},
name='Japan'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['USA'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'blue'
},
name='USA'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['China'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'yellow'
},
name='China'
),
go.Scatter(
x=gdp_data['Time'],
y=gdp_data['Netherlands'],
mode='lines',
opacity=0.7,
marker={
'size':15,
'color':'black'
},
name='Netherlands'
)
],
'layout': go.Layout(
xaxis = {'title': 'Time'},
yaxis = {'title': 'GDP'},
width = 1000,
height = 500
)
}
)
])
if __name__ == '__main__':
app.run_server(debug=True)
Recommended Posts