• Skip to main content
  • Skip to primary sidebar

学習記録

河副 太智

HTMLファイルを生成

2018年10月17日 by 河副 太智 Leave a Comment

現時点ではhtmlファイルをゼロから生成する方法が不明

以下は指定のhtmlファイルを開いて別名で保存する方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# write-html-2-mac.py
import webbrowser
 
f = open('helloworld.html','w')
 
message = """<html>
<head></head>
<body><p>Hello World!</p></body>
</html>"""
 
f.write(message)
f.close()
 
#Change path to reflect file location
filename = 'file:///Users/username/Desktop/programming-historian/' + 'helloworld.html'
webbrowser.open_new_tab(filename)

 

Filed Under: python3

eurostat統計データAPIをRESTで取得

2018年10月13日 by 河副 太智 Leave a Comment

HS指定できるデータベース候補

データベース一覧からほしいデータベースを探す
PDF版のデータベース一覧

現時点では以下の2つを候補とする

(DS-016890)EU trade by CN8

HS6桁プラス2桁(CN8桁)で指定する必要があり、それ以下は不可
年間データ取得可能

(DS-575274)EU trade by HS2,4,6 and CN8

HS2桁レベルからの参照が可能
但し、年間データ取得ができないので注意
DS-575274の個別データベース
パラメータ一覧(大容量)
※ここにあるパラメータが必ず使えるわけではないわけではない

リクエストが可能なパラメータを調べる

データベース一覧の各パラメータをみるとAPIでどの値を取得できるかを
判断する事が可能

以下の例はPERIODでAとMどちらを指定できるかを判別している
”Jan.-Dec. 2018”の表示があれば年間データの取得が可能

左がDS-575274で右がDS-016890
右だけが年間データの取得が可能

 

REST クエリーの基本設定

1
2
http://ec.europa.eu/eurostat/SDMX/diss-web/rest/resource/flowRef
/key[?[startPeriod=yyyy[mmdd]&]endPeriod=yyyy[mmdd]]

クエリ設定方法の詳細解説

 

クエリの例

HS(cn8)でChampagneを指定2204101100

1
2
3
4
5
http://ec.europa.eu/eurostat/SDMX/diss-web/rest/data/DS-575274
/M.003.0001.22041011..1
.VALUE_1000EURO+QUANTITY_TON+SUP_QUANTITY/
?startperiod=2015-01
&endPeriod=2017-12

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import xml.etree.ElementTree as ET
import pandas as pd
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker, scoped_session
import urllib.request, urllib.error
import urllib.request as req
import requests
import xml.etree.ElementTree as ET
import pandas as pd
from bs4 import BeautifulSoup
 
url = 'http://ec.europa.eu/eurostat/SDMX/diss-web/rest/data/DS-575274/M.003.0001.22041011..1.VALUE_1000EURO/?startperiod=2015-01'
xml_data = requests.get(url).content
 
soup = BeautifulSoup(xml_data,"lxml-xml")

 

動画解説

DEMOTOURS

Filed Under: Dash

複数のグラフを重ねる

2018年10月11日 by 河副 太智 Leave a Comment

ヒートマップを使用して複数のグラフを重ねる

 

tools.make_subplots
でrows=1, cols=3,と設定

shared_yaxes = True
でy軸の値を複数のグラフで共通で使用できる

次に各グラフの位置をappend_tradeで指定
先ほどのtools.make_subplotsでrows=1, cols=3,と設定したので
これに対応した位置指定をします。

fig.append_trace(trace1, 1, 1)
はtrace1のグラフを1行目の1列と指定(行は元々1しかない)
fig.append_trace(trace2, 1, 2)
はtrace2のグラフを1行目の2列と指定
fig.append_trace(trace3, 1, 3)
はtrace3のグラフを1行目の3列と指定

これでfigに3つのグラフが挿入された事になる

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#######
# Side-by-side heatmaps for Sitka, Alaska,
# Santa Barbara, California and Yuma, Arizona
# using a shared temperature scale.
######
import plotly.offline as pyo
import plotly.graph_objs as go
from plotly import tools
import pandas as pd
 
df1 = pd.read_csv('../data/2010SitkaAK.csv')
df2 = pd.read_csv('../data/2010SantaBarbaraCA.csv')
df3 = pd.read_csv('../data/2010YumaAZ.csv')
 
trace1 = go.Heatmap(
    x=df1['DAY'],
    y=df1['LST_TIME'],
    z=df1['T_HR_AVG'],
    colorscale='Jet',
    zmin = 5, zmax = 40 # add max/min color values to make each plot consistent
)
trace2 = go.Heatmap(
    x=df2['DAY'],
    y=df2['LST_TIME'],
    z=df2['T_HR_AVG'],
    colorscale='Jet',
    zmin = 5, zmax = 40
)
trace3 = go.Heatmap(
    x=df3['DAY'],
    y=df3['LST_TIME'],
    z=df3['T_HR_AVG'],
    colorscale='Jet',
    zmin = 5, zmax = 40
)
 
fig = tools.make_subplots(rows=1, cols=3,
    subplot_titles=('Sitka, AK','Santa Barbara, CA', 'Yuma, AZ'),
    shared_yaxes = True,  # this makes the hours appear only on the left
)
fig.append_trace(trace1, 1, 1)
fig.append_trace(trace2, 1, 2)
fig.append_trace(trace3, 1, 3)
 
fig['layout'].update(      # access the layout directly!
    title='Hourly Temperatures, June 1-7, 2010'
)
pyo.plot(fig, filename='AllThree.html')

 

 

Filed Under: Dash

画面全幅表示(stretch)

2018年10月11日 by 河副 太智 Leave a Comment

Wordpressの記事ページの横幅を全開に広げる

1
2
3
4
5
6
7
8
9
10
<div class="siteorigin-panels-stretch panel-row-style
panel-row-style-for-4204-1" style="margin-left: -30px;
margin-right: -30px; padding-left: 0px;
padding-right: 0px; border-left: 0px; border-right: 0px;"
data-stretch-type="full-stretched">
 
記事
 
 
</div>

 

Filed Under: css

DigitalOceanにFileZillaでSFTP接続

2018年10月11日 by 河副 太智 Leave a Comment

プロトコル:SFTP
ホスト:IPアドレス
ポート:空欄
ログインタイプ:通常
ユーザー:root
パスワード:設定したパスワード

 

 

Filed Under: VPS

Dashをデプロイして簡単なグラフを表示

2018年10月11日 by 河副 太智 Leave a Comment

Flaskをdigitalocean(ubuntu18)にインストールの続き
前回の作業でipアドレスをブラウザに打ち込んだ結果
以下のように作動するようになったので今回は
実際にdashグラフを動かしてみる

dashのコンポーネント等をインストールする

1
2
sudo pip3.6 install dash dash-renderer dash-html-components
dash-core-components plotly

 

■pythonプログラムを書く

cd /var/www/FlaskApp/FlaskApp
へ移動し

nano __init__.py
に以下を書き込む

server = app.serverを必ず記述する

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import dash
import dash_core_components as dcc
import dash_html_components as html
 
app = dash.Dash()
 
app.layout = html.Div(children=[
    html.H1(children='Dash Tutorials'),
        dcc.Graph(
        id='example',
        figure={
            'data': [
                {'x': [1, 2, 3, 4, 5], 'y': [9, 6, 2, 1, 5], 'type': 'line', 'name': 'Boats'},
                {'x': [1, 2, 3, 4, 5], 'y': [8, 7, 2, 7, 3], 'type': 'bar', 'name': 'Cars'},
            ],
            'layout': {
                'title': 'Basic Dash Example'
            }
        }
    )
])
 
server = app.server
 
if __name__ == '__main__':
    app.run_server(debug=True)

 

cd var/www/FlaskApp
へ移動し

nano FlaskApp.wsgi
で最後の一行をfrom FlaskApp import server as applicationに変更
元はfrom FlaskApp import app as applicationとなっていた

1
2
3
4
5
6
7
#!/usr/bin/python3.6
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/var/www/FlaskApp/")
 
from FlaskApp import server as application

■python実行

service apache2 reload
cd /var/www/FlaskApp/FlaskApp
python3.6 __init__.py

 

 

 

Filed Under: Dash

  • « Go to Previous Page
  • Page 1
  • Interim pages omitted …
  • Page 11
  • Page 12
  • Page 13
  • Page 14
  • Page 15
  • Interim pages omitted …
  • Page 66
  • Go to Next Page »

Primary Sidebar

カテゴリー

  • AWS
  • Bootstrap
  • Dash
  • Django
  • flask
  • GIT(sourcetree)
  • Plotly/Dash
  • VPS
  • その他tool
  • ブログ
  • プログラミング
    • Bokeh
    • css
    • HoloViews
    • Jupyter
    • Numpy
    • Pandas
    • PosgreSQL
    • Python 基本
    • python3
      • webアプリ
    • python3解説
    • scikit-learn
    • scipy
    • vps
    • Wordpress
    • グラフ
    • コマンド
    • スクレイピング
    • チートシート
    • データクレンジング
    • ブロックチェーン
    • 作成実績
    • 時系列分析
    • 機械学習
      • 分析手法
      • 教師有り
    • 異常値検知
    • 自然言語処理
  • 一太郎
  • 数学
    • sympy
      • 対数関数(log)
      • 累乗根(n乗根)
    • 暗号学

Copyright © 2025 · Genesis Sample on Genesis Framework · WordPress · Log in