Plotly

【plotlyチュートリアル】<<前談>>plotlyで簡単プログラミング

はじめに

本記事では「プログラミングを簡単に学びたい」「クリエイティブなグラフを作りたい」方向けの講座になります。

特にpythonを学びながら動くグラフを作成できる「plotly」はおすすめのグラフ作成ソフトです(無料で使えます)

plotly、plotly_express(より簡単になったもの)の導入についてはこちらの記事を参考にしてください。

Pythonをグラフ作成で学ぶ【plotly_expressで1行プログラミング】 【本記事の目標】 たった1行で動くグラフを作成し、体感する! これからPythonを学びたい人向けに朗報です。 今から紹介...

この講座ではプログラミング初学者でも好みのグラフを作成することを目指し、実際に日常の生活や業務で活かせるような実用的なグラフを学んでいきます。

そして、最終的には自動でデータが更新されたり、機械学習を搭載したアプリ開発までできるように一緒に成長できたらと考えています。

★学びのイメージ

【チュートリアル編】←まだここが始まる前段階
・プログラミングに触れる
・色んなグラフを扱えるようになる

【実践編】
・見る人をイメージしてレイアウトを工夫する
・配色やデザインにもこだわったグラフを作成する

【アプリ開発編】
・HTMLとCSSを学び、ダッシュボードを作成する
・自動でデータを収集する(Webスクレイピング)
・機械学習で予測することも自動化する

グラフ作成ソフトでプログラミングを学ぶメリット

ビジネスとプログラミングの学習が自然とできる

 <<ビッグデータ時代だからこそグラフ作成スキルは重要!>>

 ▶どの業界でもグラフ作成スキルは必要

 ▶一番簡単なプログラミングはグラフを表示するコードを書くこと

 

AI(機械学習)と相性が良い

 <<今回紹介するpythonは2020年現在圧倒的人気を誇る言語>>

 ▶pythonはデータ収集やデータ加工も得意な万能言語である

 ▶pythonを学ぶとAI(機械学習)を簡単に導入できる 

 

ノンプログラミングのグラフ作成ソフトでは機能が限定される

 <<どのソフトを使ったらいいか分からない方必見!>>

 ▶Excelはグラフの種類が限られる

 ▶細かな指定には結局プログラミングが必要であり、一つのソフトでマスターすれば他のソフトも簡単に使えるようになる

一番簡単なプログラミングはグラフを表示するコードを書くこと

「時代が変わり、誰でもプログラミングが学べる環境になってきた」

最近はパソコンの高性能化や記録媒体の容量向上、さらにはカメラやセンサなどの高機能化によって、世の中に大量のデータが蓄積できるようになってきています。

そして様々なアプリが開発され、そのデータはリアルタイムで確認できることが当たり前になるまで進歩しています。

その背景にはプログラミングの技術が関わっており、便利なライブラリが登場してきたため個人レベルでアプリを開発することも簡単になってきています。

カメラとパソコンがあればAIを搭載した監視カメラまで個人で作れる時代です。

今回紹介するplotlyはノンプログラミングでも使えますが、プログラミングで使用する事をおすすめします。

プログラミング技術を身につけ、より便利で豊かな生活を送れるように一緒に頑張りましょう。

グラフ化することは一番簡単なプログラミングと考えているのでぜひこのサイトで学んでいってください。

ここで代表的なグラフを1つ紹介します。

1行のコードで作れるクリエイティブなグラフを紹介

円グラフ(sunburst)

南米の部分をクリックすると南米に絞った円グラフに変化してくれます。

動きがあるのでプレゼンテーションなどで使用する際には良く伝わるグラフになります。

figure_factoryのcreate_tableを使うとたった一文で表も簡単に作成することができるので便利です。

※例では列を3項目に絞り、ソートと列名を変更しているので4行になっています

プログラム例文

データの読み込み

下記からデータはダウンロードできます。

2019コーヒー豆輸入

初めのimportの部分はライブラリを読み込む文です。pandasというライブラリをpdという変数を使って使いますという意味です。

データの読み込みは3行目の一文で完了です。pd.read_excelによってdfというデータフレーム(表のイメージ)を作成しています。

import pandas as pd
import numpy as np

df = pd.read_excel('2019コーヒー豆輸入.xls')

単位をkg(キログラム)からt(トン)に変換して四捨五入により丸めます。

df[2019]=round(df[2019]/1000)

円グラフを作成するコード

import plotly.express as px
import plotly.io as pio

fig=px.sunburst(df, path=['地域', '国'], values=2019, title='コーヒー生豆の輸入量(t)')
pio.write_html(fig,file="./0-1.html")

表を作成するコード

1行目:表に使う列名を指定する
2行目:数量(2019年)の多い順にデータを並べる
3行目:列名を2019→2019年コーヒー生豆輸入量(t)に変更
3行目:高さを指定(height=20)して表を作成

import plotly.figure_factory as ff

df_table=df[['国', '地域',2019]]
df_table=df_table.sort_values(by=2019,ascending=False)
df_table=df_table.rename(columns={2019: '2019年コーヒー生豆輸入量(t)'})
fig=ff.create_table(df_table, height_constant=20)
pio.write_html(fig,file="./0-2.html")

最後に・・・

【plotlyチュートリアル】では複数回に分けてコードを紹介していき、これからプログラミングを学ぶ方でもこのようなグラフを書けるようになることを目指します。

更新の励みになるので、続きを見ていただけると嬉しいです。

↓第1回目の記事はこちらです。

【plotlyチュートリアル】<<第1回>>折れ線グラフ はじめに 作成する3種類の折れ線グラフについて 本記事ではPythonのグラフライブラリとして使えるplotlyによる「折...

Plotlyに関する書籍紹介

↓Plotlyについて学べる数少ない参考書です。

ABOUT ME
Mickey@コーヒー好きエンジニア
【製造業×プログラミング×AI】Python/VBAを活用した業務改善、Streamlit/Plotlyを活用したWebアプリ開発について初心者向けに発信中|Wordpressブログを運営しながらHTML/CSSの勉強中|趣味は自家焙煎コーヒー作り|noteでは焙煎理論を発信
【製造×プログラミング×AI】
Mickey@コーヒー好きエンジニア
【製造業×プログラミング×AI】ロボット×画像処理×AI×3現主義が得意な生産技術者|Python/VBAを活用した業務改善、Streamlit/Plotly/PySimpleGUIなどを活用したアプリ開発について初心者向けに発信中|趣味は自家焙煎コーヒー作り|noteでは焙煎理論を発信|iOSアプリ開発も始めました
\ Follow me /