megatenpa@python

ベンチャー企業のWebエンジニア駆け出し。独学のPythonで天文学系の大学院を修了→転職→今に至る。最近は主にPHPを触ってます。 メインのブログは「M天パ」https://megatenpa.com/です。

go(plotly.graph_objects)

2023/4/23

【Plotlyでヒートマップ】go.Heatmapで動かせるヒートマップを作成する

今回はPythonのPlotlyのgo(plotly.graph_objects)のgo.Heatmapを使ってヒートマップを作成する方法を解説する。 ヒートマップとは行と列(xとy)のある表形式のデータの各セルの値の大小を色分けしたグラフのこと。2次元配列に色を追加し3次元でデータを見ることができる。 本記事ではgo.Heatmapでのヒートマップの作成方法やレイアウトの変更方法、各セルにテキストを追加する方法などを解説する。 Python環境は以下。 Python 3.10.8 numpy 1.24. ...

astropy

2023/4/9

【astropy.units】Pythonで単位付きの数値を計算・単位換算

自然現象を扱う理科系の計算では単位は必須。ただ、単位を考えながらPythonコードを考えるのがかなり面倒。 当然ながら単位換算を間違えると最終的な結果がおかしくなるし、どこで計算ミスしたのかを見つけるために処理を追っていく必要がある。 今回はastropyの単位付与ライブラリastropy.unitsを使って、数値に単位を付与して計算・単位換算する方法を紹介する。 これまで単位換算で計算ミスしていた人・単位換算をもっと楽にしたい人は読み進めてほしい。 Python環境は以下。 Python 3.10.8 ...

go(plotly.graph_objects)

2023/3/25

【Plotlyでsubplot】goとmake_subplotsでサブプロットを作成する

Plotlyで複数のグラフを1つのグラフとして表示するサブプロットを作成する方法を紹介する。主にfig.make_subplotsを使うが、domainやfig.set_subplotsを使う方法も解説する。 複数のグラフを同時に独立して表示させたい人はぜひとも読み進め、サブプロットを作成する方法を学んでほしい。 Python環境は以下。 Python 3.10.8 plotly 5.11.0 plotly-orca 3.4.2 参考になるサイト Plotly公式 Subplots in Python p ...

px(plotly.express)

2023/3/18

【Plotlyで折れ線グラフ】px.lineでLine Plotを作成する

Plotlyの散布図(scatter plot)はわかったけど線のプロット(line plot)はどうするのか。今回はpx.lineで折れ線グラフを作成する方法を紹介する。 本記事ではpx(plotly.express)の折れ線グラフの作成方法を紹介するが、go(plotly.graph_objects)での折れ線グラフの作成方法は下記で解説している。 その他にもpx.scatterやgo.Scatterといった散布図グラフの作成方法も解説済み。まずはこの記事から読んでほしい。 本記事ではpx.lineで ...

Pythonを学ぶ心得

2023/3/4

【経験談】大学生の私が独学でPythonを学ぶことができたワケ

今回は実際に私の体験談として独学でPythonを学べたワケについて紹介する。これからPythonを学ぼうと思っている人、すでに学んているが挫折している人は読み進めてほしい。 本記事では大学生の私が主人公だが、社会人がPythonを学ぶことができるかについては以下の記事で解説している。 なお、現在は独学で学習したスキルを活かしてエンジニアとしてさまざまな言語を使いながら働いている。独学ででもPythonを学習して良かったと感じている。 大学4年生までプログラミング未経験 実は私は大学4年までプログラミングに ...

Pythonを学ぶ心得

2023/2/25

【独学でPython】プログラミング初心者が学ぶために準備すること

今回はプログラミング初心者が独学でPythonを学ぶために準備しておくことについて紹介する。どちらかというと道具というよりはマインド面をメインとする。 これからプログラミングを始めたいがいきなり高額なスクールは嫌だ。小さく始めたいという人は参考にしてほしい。 なお、本記事ではプログラミング・Pythonを学習するメリットを紹介したのちにPythonを学ぶ方法を紹介する。 プログラミングを学習するメリット まずはプログラミング自体を学習するメリットを紹介する。以下に挙げた内容はプログラミング言語に共通するメ ...

go(plotly.graph_objects)

2023/2/18

【Plotlyで折れ線グラフ】go.ScatterでLine Plotを作成する

今回はPlotlyのgo.Scatterを使って折れ線グラフを作成する。px(plotly.express)ではpx.lineという折れ線グラフ専用の関数があるが、goには専用の関数はなくgo.Scatterで代用する。 go.Scatterの詳しいグラフの描き方は以下の記事参照。 本記事ではgo.Scatterで折れ線グラフを作成する方法と、プロットの色や欠損地の扱いなどを解説する。 Python環境は以下。 Python 3.10.8 numpy 1.24.0 plotly 5.11.0 plotly ...

ChatGPT

2023/2/11

【PythonでChatGPT】話題のAI(人工知能)を簡単に試す(Google Colaboratoryもあり)

今回は2022年末にOpenAIがリリースし公開5日程度でユーザー数が100万人を達成した話題のAI(人工知能)モデルのChatGPTをPythonで動かす方法を紹介する。 もちろん公式サイトで普通に動作させるのも1つの手であり、一般人はこの方法しか知らない。ただ、Pythonを使うことでプログラムで動かすことが可能だ。応用すれば自サービスにも使えそうだ。 本記事ではChatGPTのAPI Keyとライブラリopenaiのopenai.Completion.createを使用する。 Python環境は以下 ...

px(plotly.express)

2023/2/18

【Plotlyで散布図】px.scatterのグラフの描き方まとめ

これからPloltyで動くグラフを作りたい、もっとグラフをキレイに見せたい、後から簡単に見返せるグラフを作りたい。 そんな人はまずはPlotlyの基礎、pxの散布図グラフpx.scatterから始めてみよう。本記事ではpx.scatterの使い方をざっくりと解説する。 本記事の内容は以下。 1種類のデータのグラフを作成 複数種類のデータのグラフを作成 既存のプロットにプロットを追加 プロット名や凡例タイトルを変更 プロットの色やシンボルのサイズなどを変更 カラーバーとシンボルの設定を両立 エラーバーの追加 ...

go(plotly.graph_objects) plotly

2023/2/4

【Plotlyで散布図】go.Scatterglで大量のデータでグラフを作成する

今回はPythonのPlotlyで大量のデータを軽く扱うことができるgo.Scatterglの使い方とgo.Scatterとの比較を行う。1万以上のデータを散布図として扱う際はこの記事を参考にgo.Scatterglを活用してほしい。 もちろんgo.Scatterで1万のデータをグラフ化することも可能だが、グラフ作成時間やグラフ表示後の動きがカクカクして使いづらい。そんな時にWebGLを使用して動作するgo.Scatterglが活躍する。 本記事を通して1万や10万といった大量のデータを簡単に扱えるように ...

Pythonを学ぶ心得

2023/3/4

【Pythonを独学】社会人が1人で学習できるのか。結論、学べるが...

今回は社会人がプログラミング言語「Python」を独学で学習できるか、について解説する。プログラミングの需要は高まっているので気になる人も多いだろう。 かくいう私はプログラミング経験0の状態からPythonを独学で習得し、その知識を使って転職・今のエンジニアという職に付いている。 この記事を読むことで独学で学習するか否かの結論が出るだろう。 Pythonとは この記事に辿り着いたということはPython自体が何かは知っていると思うが、一応、よくわからないという人にも向けて何ができるか記載する。 Pytho ...

Plotly全般の知識

2023/2/4

【Plotly&sliders】スライダーを追加しデータを切り変える

本記事ではPlotlyでデータの流れを簡単に理解できる機能のスライダーについてその仕組みやグラフの例を解説・紹介する。 スライダー機能を使えるようになると時系列のグラフやsin(2x), sin(3x)といった一部だけ変わるグラフをわかりやすく表現することができる。 Plotlyのボタン機能(updatemenus)でも実現はできるが、この手のグラフはスライダー機能が断然わかりやすい。本記事では簡単なグラフから複数種のデータまで扱っているので是非ともスライダーをマスターしてほしい。 Python環境は以下 ...

Plotly全般の知識

2023/5/21

【Plotly&ボタン】updatemenusのargs2で2回目のボタン押下機能を追加

今回はPlotlyのボタン機能に2回目のボタン押下の処理を追加する方法を解説する。この機能を使うことで、1つのボタンに2種類の機能を付与してボタンの数を減らすことができるだろう。 また、オン・オフの切り替えを1つのボタンで担うことができるので、機能面でもわかりやすくなるだろう。 本記事の内容は以下のupdatemenusでボタンを追加する方法の応用版だ。まだ読んでいない人はまずは基礎固めから始めてほしい。 Python環境は以下。 Python 3.10.8 numpy 1.24.0 plotly 5.1 ...

Plotly全般の知識

2023/5/21

【Plotly&ボタン】updatemenusとbuttonsでボタン機能を追加

Plotlyはプロットしたデータを動かすことができるのが大きな魅力の1つだが、本記事では使えると非常に強力で便利なボタン機能(updatemenus)を解説する。 ボタン機能があると2種類のデータを1つのグラフに入れて切り替えて表示することができる。今まで2ファイルで保存していたのが1ファイルで済むようになったということだ。 さらにPlotlyではhtmlで保存もできるから、必要な機能をボタンで作成してhtmlで保存しておけば、後から見てもすぐに必要なグラフが手に入る。 本記事ではそんな便利なボタン機能( ...

go(plotly.graph_objects)

2023/2/4

【Plotlyで散布図】go.Scatterのグラフの描き方まとめ

これからPloltyで動くグラフを作りたい、もっとグラフをキレイに見せたい、後から簡単に見返せるグラフを作りたい。 そんな人はまずはPlotlyの基礎、goの散布図グラフgo.Scatterから始めてみよう。本記事ではgo.Scatterの使い方をざっくりと解説する。 本記事の内容は以下。 go.Scatterでグラフを作成 点・線・文字をプロット点に設定 バブルチャートを作成 カラースケールの設定 マーカー、線の種類を変更 プロットを後から追加・更新 ホバーを設定 大量のデータを軽く扱う go.Scat ...

つぶやき

2023/1/28

【サブブログ開始】プログラミング用に別のブログを立ち上げました

初めまして、Pro天パ管理人・運営者のメガネ(@m_ten_pa)です。このブログでは私が運営する本家のブログ「M天パ」(めがてんぱ)のプログラミング部分を切り出してブログ・サイトにします。 具体的には以下の2点を中心に記事を作成する予定です。 Pythonの基礎知識 Pythonのplotlyの基礎知識 ベースとなる記事はM天パにあるのでそのまま持ってきてもいいんですが、どうせこの記事に持ってくるってことなので、リライトする予定です。 なのでこちらのブログの更新頻度はそこまで高くないです。気ままに移行・ ...