Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 58ad56c

Browse files
committed
Plotly
1 parent 3ab2c2a commit 58ad56c

File tree

3 files changed

+25
-21
lines changed

3 files changed

+25
-21
lines changed

README.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3428,7 +3428,7 @@ import pandas as pd, plotly.express as ex
34283428
#### Displays a line chart of total coronavirus deaths per million grouped by continent:
34293429

34303430
![Covid Deaths](web/covid_deaths.png)
3431-
<div id="2a950764-39fc-416d-97fe-0a6226a3095f" class="plotly-graph-div" style="height:321px; width:100%;"></div>
3431+
<div id="2a950764-39fc-416d-97fe-0a6226a3095f" class="plotly-graph-div" style="height:312px; width:914px;"></div>
34323432

34333433
```python
34343434
covid = pd.read_csv('https://covid.ourworldindata.org/data/owid-covid-data.csv',
@@ -3447,25 +3447,26 @@ ex.line(df, x='Date', y='Total Deaths per Million', color='Continent').show()
34473447
#### Displays a multi-axis line chart of total coronavirus cases and changes in prices of Bitcoin, Dow Jones and gold:
34483448

34493449
![Covid Cases](web/covid_cases.png)
3450-
<div id="e23ccacc-a456-478b-b467-7282a2165921" class="plotly-graph-div" style="height:315px; width:100%;"></div>
3450+
<div id="e23ccacc-a456-478b-b467-7282a2165921" class="plotly-graph-div" style="height:287px; width:935px;"></div>
34513451

34523452
```python
34533453
import pandas as pd, plotly.graph_objects as go
34543454

34553455
def main():
3456-
display_data(wrangle_data(*scrape_data()))
3456+
covid, bitcoin, gold, dow = scrape_data()
3457+
display_data(wrangle_data(covid, bitcoin, gold, dow))
34573458

34583459
def scrape_data():
3459-
def scrape_covid():
3460+
def get_covid_cases():
34603461
url = 'https://covid.ourworldindata.org/data/owid-covid-data.csv'
34613462
df = pd.read_csv(url, usecols=['location', 'date', 'total_cases'])
34623463
return df[df.location == 'World'].set_index('date').total_cases
3463-
def scrape_yahoo(slug):
3464-
url = (f'https://query1.finance.yahoo.com/v7/finance/download/{slug}?'
3464+
def get_ticker(symbol):
3465+
url = (f'https://query1.finance.yahoo.com/v7/finance/download/{symbol}?'
34653466
'period1=1579651200&period2=9999999999&interval=1d&events=history')
34663467
df = pd.read_csv(url, usecols=['Date', 'Close'])
34673468
return df.set_index('Date').Close
3468-
out = scrape_covid(), scrape_yahoo('BTC-USD'), scrape_yahoo('GC=F'), scrape_yahoo('^DJI')
3469+
out = get_covid_cases(), get_ticker('BTC-USD'), get_ticker('GC=F'), get_ticker('^DJI')
34693470
return map(pd.Series.rename, out, ['Total Cases', 'Bitcoin', 'Gold', 'Dow Jones'])
34703471

34713472
def wrangle_data(covid, bitcoin, gold, dow):
@@ -3485,8 +3486,9 @@ def display_data(df):
34853486
figure.update_layout(
34863487
yaxis1=dict(title='Total Cases', rangemode='tozero'),
34873488
yaxis2=dict(title='%', rangemode='tozero', overlaying='y', side='right'),
3488-
legend=dict(x=1.1),
3489-
height=450
3489+
legend=dict(x=1.08),
3490+
width=944,
3491+
height=423
34903492
)
34913493
figure.show()
34923494

index.html

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454

5555
<body>
5656
<header>
57-
<aside>November 5, 2023</aside>
57+
<aside>November 12, 2023</aside>
5858
<a href="https://gto76.github.io" rel="author">Jure Šorn</a>
5959
</header>
6060

@@ -2786,7 +2786,7 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
27862786
&lt;Figure&gt;.write_html/json/image(<span class="hljs-string">'&lt;path&gt;'</span>) <span class="hljs-comment"># Also &lt;Figure&gt;.show().</span>
27872787
</code></pre></div>
27882788

2789-
<div><h4 id="displaysalinechartoftotalcoronavirusdeathspermilliongroupedbycontinent">Displays a line chart of total coronavirus deaths per million grouped by continent:</h4><p></p><div id="2a950764-39fc-416d-97fe-0a6226a3095f" class="plotly-graph-div" style="height:321px; width:100%;"></div><pre><code class="python language-python hljs">covid = pd.read_csv(<span class="hljs-string">'https://covid.ourworldindata.org/data/owid-covid-data.csv'</span>,
2789+
<div><h4 id="displaysalinechartoftotalcoronavirusdeathspermilliongroupedbycontinent">Displays a line chart of total coronavirus deaths per million grouped by continent:</h4><p></p><div id="2a950764-39fc-416d-97fe-0a6226a3095f" class="plotly-graph-div" style="height:312px; width:914px;"></div><pre><code class="python language-python hljs">covid = pd.read_csv(<span class="hljs-string">'https://covid.ourworldindata.org/data/owid-covid-data.csv'</span>,
27902790
usecols=[<span class="hljs-string">'iso_code'</span>, <span class="hljs-string">'date'</span>, <span class="hljs-string">'total_deaths'</span>, <span class="hljs-string">'population'</span>])
27912791
continents = pd.read_csv(<span class="hljs-string">'https://gist.githubusercontent.com/stevewithington/20a69c0b6d2ff'</span>
27922792
<span class="hljs-string">'846ea5d35e5fc47f26c/raw/country-and-continent-codes-list-csv.csv'</span>,
@@ -2801,22 +2801,23 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
28012801

28022802

28032803

2804-
<div><h4 id="displaysamultiaxislinechartoftotalcoronaviruscasesandchangesinpricesofbitcoindowjonesandgold">Displays a multi-axis line chart of total coronavirus cases and changes in prices of Bitcoin, Dow Jones and gold:</h4><p></p><div id="e23ccacc-a456-478b-b467-7282a2165921" class="plotly-graph-div" style="height:315px; width:100%;"></div><pre><code class="python language-python hljs"><span class="hljs-keyword">import</span> pandas <span class="hljs-keyword">as</span> pd, plotly.graph_objects <span class="hljs-keyword">as</span> go
2804+
<div><h4 id="displaysamultiaxislinechartoftotalcoronaviruscasesandchangesinpricesofbitcoindowjonesandgold">Displays a multi-axis line chart of total coronavirus cases and changes in prices of Bitcoin, Dow Jones and gold:</h4><p></p><div id="e23ccacc-a456-478b-b467-7282a2165921" class="plotly-graph-div" style="height:287px; width:935px;"></div><pre><code class="python language-python hljs"><span class="hljs-keyword">import</span> pandas <span class="hljs-keyword">as</span> pd, plotly.graph_objects <span class="hljs-keyword">as</span> go
28052805

28062806
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">main</span><span class="hljs-params">()</span>:</span>
2807-
display_data(wrangle_data(*scrape_data()))
2807+
covid, bitcoin, gold, dow = scrape_data()
2808+
display_data(wrangle_data(covid, bitcoin, gold, dow))
28082809

28092810
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">scrape_data</span><span class="hljs-params">()</span>:</span>
2810-
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">scrape_covid</span><span class="hljs-params">()</span>:</span>
2811+
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">get_covid_cases</span><span class="hljs-params">()</span>:</span>
28112812
url = <span class="hljs-string">'https://covid.ourworldindata.org/data/owid-covid-data.csv'</span>
28122813
df = pd.read_csv(url, usecols=[<span class="hljs-string">'location'</span>, <span class="hljs-string">'date'</span>, <span class="hljs-string">'total_cases'</span>])
28132814
<span class="hljs-keyword">return</span> df[df.location == <span class="hljs-string">'World'</span>].set_index(<span class="hljs-string">'date'</span>).total_cases
2814-
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">scrape_yahoo</span><span class="hljs-params">(slug)</span>:</span>
2815-
url = (<span class="hljs-string">f'https://query1.finance.yahoo.com/v7/finance/download/<span class="hljs-subst">{slug}</span>?'</span>
2815+
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">get_ticker</span><span class="hljs-params">(symbol)</span>:</span>
2816+
url = (<span class="hljs-string">f'https://query1.finance.yahoo.com/v7/finance/download/<span class="hljs-subst">{symbol}</span>?'</span>
28162817
<span class="hljs-string">'period1=1579651200&amp;period2=9999999999&amp;interval=1d&amp;events=history'</span>)
28172818
df = pd.read_csv(url, usecols=[<span class="hljs-string">'Date'</span>, <span class="hljs-string">'Close'</span>])
28182819
<span class="hljs-keyword">return</span> df.set_index(<span class="hljs-string">'Date'</span>).Close
2819-
out = scrape_covid(), scrape_yahoo(<span class="hljs-string">'BTC-USD'</span>), scrape_yahoo(<span class="hljs-string">'GC=F'</span>), scrape_yahoo(<span class="hljs-string">'^DJI'</span>)
2820+
out = get_covid_cases(), get_ticker(<span class="hljs-string">'BTC-USD'</span>), get_ticker(<span class="hljs-string">'GC=F'</span>), get_ticker(<span class="hljs-string">'^DJI'</span>)
28202821
<span class="hljs-keyword">return</span> map(pd.Series.rename, out, [<span class="hljs-string">'Total Cases'</span>, <span class="hljs-string">'Bitcoin'</span>, <span class="hljs-string">'Gold'</span>, <span class="hljs-string">'Dow Jones'</span>])
28212822

28222823
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">wrangle_data</span><span class="hljs-params">(covid, bitcoin, gold, dow)</span>:</span>
@@ -2836,8 +2837,9 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
28362837
figure.update_layout(
28372838
yaxis1=dict(title=<span class="hljs-string">'Total Cases'</span>, rangemode=<span class="hljs-string">'tozero'</span>),
28382839
yaxis2=dict(title=<span class="hljs-string">'%'</span>, rangemode=<span class="hljs-string">'tozero'</span>, overlaying=<span class="hljs-string">'y'</span>, side=<span class="hljs-string">'right'</span>),
2839-
legend=dict(x=<span class="hljs-number">1.1</span>),
2840-
height=<span class="hljs-number">450</span>
2840+
legend=dict(x=<span class="hljs-number">1.08</span>),
2841+
width=<span class="hljs-number">944</span>,
2842+
height=<span class="hljs-number">423</span>
28412843
)
28422844
figure.show()
28432845

@@ -2924,7 +2926,7 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
29242926

29252927

29262928
<footer>
2927-
<aside>November 5, 2023</aside>
2929+
<aside>November 12, 2023</aside>
29282930
<a href="https://gto76.github.io" rel="author">Jure Šorn</a>
29292931
</footer>
29302932

web/covid_cases.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6224,7 +6224,7 @@ if (document.getElementById("e23ccacc-a456-478b-b467-7282a2165921")) {
62246224
"side": "right"
62256225
},
62266226
"legend": {
6227-
"x": 1.1
6227+
"x": 1.08
62286228
},
62296229
"margin": {
62306230
"t": 24,

0 commit comments

Comments
 (0)