-
Matplotlibで塗りつぶし円弧を描画する方法
Matplotlibで塗りつぶされた円弧(半円)を描くには、fill_between()メソッドを使って曲線と基準線との間の領域を塗りつぶすのが一般的な方法です。以下の手順に従って実装できます。手順図のサイズを設定し、サブプロット間および周囲のパディングを調整します。図(figure)とサブプロット(axes)を作成します。半径 r と縦方向のオフセット yoff の2つの変数を初期化します。NumPyを使って x と y のデータ点を生成します。fill_between() でxとyのプロット間の領域を塗りつぶします。軸のアスペクト比を等しく設定し、図のキャンバスを描画します。図を表示するに
-
Matplotlibでグレースケール画像から3Dサーフェスプロットを作成する方法
Matplotlibを使えば、グレースケール画像のデータをもとに立体的なサーフェスプロット(表面プロット)を簡単に作成できます。画像の輝度値を高さ情報として扱うことで、2次元の画像データを3次元的に視覚化することが可能です。 作成手順 図のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。 NumPyを使ってランダムなデータポイントを作成します。 2次元の画像データラスタから、xx と yy の座標データポイントを取得します。 新しい図を作成するか、既存の図をアクティブにします。 現在の軸を取得し、3D投影(3d projection)の axes に設定します。 c
-
Matplotlibで各Y軸サブプロットの最初と最後の目盛りラベルを非表示にする方法
Matplotlibで、各Y軸サブプロットの最初と最後の目盛りラベルを削除(非表示)したい場合があります。たとえば、複数のグラフを縦に並べた際に、隣接するサブプロット同士で数値が重なって見づらくなるのを防ぐのに有効です。 以下の手順で実現できます。 図のサイズを設定し、figure.autolayout を有効にしてサブプロット間および周囲の余白を自動調整します。 plt.subplots() を使って図とサブプロットのセットを作成します。 各軸(Axes)をループで反復処理し、plt.setp() によって最初と最後の目盛りラベルの visible を False に設定して非表示にします
-
【Python】datetimeオブジェクトから月と日だけを抽出して表示する方法
Pythonでdatetimeオブジェクト(日時データ)から「月」と「日」だけを抽出してグラフに表示したい場合、matplotlibが提供するDateFormatter()クラスを利用すると簡単に実現できます。この記事では、実際のコード例とともに具体的な手順をわかりやすく解説します。実装の手順図(figure)のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。2次元のサイズ変更可能な表形式データを持つデータフレームdfを作成します。figureとサブプロットの一式を作成します。plot()メソッドを使ってデータフレームをプロットします。X軸のフォーマッターを設定し、月
-
Matplotlibでグラフ下部の余白を削除する方法
Matplotlibのグラフ下部にできてしまう余白(空白)を削除したい場合は、tight_layout(タイトレイアウト)または autoscale_on=False を活用することで解決できます。実装の手順図(figure)のサイズを設定し、サブプロット間および周囲のパディングを調整します。新しい図を作成するか、既存の図をアクティブにします。サブプロット構成の一部として、図に軸オブジェクト ax を追加します。このとき autoscale_on=False を指定し、x軸・y軸の表示範囲(xlim / ylim)を明示的に設定します。plot() メソッドを使って、データポイントのリストをプ
-
Seaborn / MatplotlibのプロットからX軸ラベルを削除・非表示にする方法
Seaborn / Matplotlibで作成したプロットからX軸ラベルを削除または非表示にするには、以下の手順に従います。図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。sns.set_style() を使用して、Seabornプロットの見た目(スタイル)を設定します。オンラインリポジトリからサンプルデータセットを読み込みます(インターネット接続が必要です)。X軸ラベルを非表示または削除するには、set(xlabel=None) を使用します。図を表示するには、show() メソッドを呼び出します。サンプルコードfrom matplotlib import py
-
Seabornのヒートマップで注釈の表示形式を指定する方法
Seabornのヒートマップでは、fmtパラメータを使うことで、セル内に表示される注釈(annotation)の数値フォーマットを自由にカスタマイズできます。ここでは、注釈をパーセント形式で表示する方法を、具体的な手順とともに解説します。 実装の手順 図のサイズを設定し、サブプロット間および周囲の余白を調整します。 Pandasのデータフレームを作成します。今回は5列のデータを使用します。 データを色分けされた行列として可視化します。fmt=.2%を指定することで、注釈が小数点以下2桁のパーセント形式で表示されます。 show()メソッドを使って図を画面に表示します。 コード例 impor
-
Matplotlibで100%積み上げ面グラフを作成する方法
Matplotlibを使って100%積み上げ面グラフ(スタックエリアチャート)を作成するには、以下の手順に従います。 作成手順 図のサイズを設定し、サブプロット間および周囲の余白を調整します。 年(X軸の値)のリストを作成します。 各年の人口データを格納した辞書を作成します。 図(figure)とサブプロット(axes)を作成します。 stackplot() メソッドで積み上げ面グラフを描画します。 凡例を図の左上(upper left)に配置します。 タイトル、X軸ラベル、Y軸ラベルを設定します。 show() メソッドで図を表示します。 サンプルコード import matplotli
-
DjangoプロジェクトにDebug Toolbar(デバッグツールバー)を導入する方法
Django Debug Toolbarは、データベースクエリの確認やWebサイトの読み込み速度の計測など、さまざまなデバッグ作業に活用できる強力なツールです。開発者の間で非常に人気が高く、多くのプロジェクトで採用されています。この記事では、その具体的な導入手順をステップごとに解説します。 実装例 まず、「myapp」という名前のアプリを作成しておきましょう。 1. django-debug-toolbarのインストール 最初に、django-debug-toolbarをインストールします。 pip install django-debug-toolbar 2. INSTALLED_APPSへ
-
Django管理画面のセキュリティ強化:偽の管理者ログイン(ハニーポット)で不正アクセスを記録する方法
はじめにDjangoの管理画面(admin)への不正アクセス対策として、サードパーティ製パッケージ「django-admin-honeypot」を使って偽のログインページを設置する方法を紹介します。この仕組みを導入すると、誰かが管理画面でログインを試みた場合、正しいパスワードを入力してもログインできず、その試行情報がIPアドレスやセッションIDとともにデータベースのテーブルへ自動的に記録されます。攻撃者をおびき寄せる「ハニーポット」として機能し、不正アクセスの監視に役立ちます。前提条件あらかじめプロジェクトのurls.pyの基本設定を行い、settings.pyのINSTALLED_APPSに
-
DjangoモデルにJSONフィールドを追加する方法【django-jsonfield活用ガイド】
この記事では、DjangoのモデルにJSONフィールドを追加する方法を解説します。JSONはキーと値のペアでデータを保存できるシンプルなフォーマットで、波括弧({})で記述されます。開発者向けサイトなどでは、柔軟な構造のデータを扱う場面が多く、そうしたケースでJSONフィールドは非常に役立ちます。事前準備まず、Djangoプロジェクトとアプリを作成しましょう。アプリをINSTALLED_APPSに追加し、URLの設定を行い、基本的なモデルを作成してHTMLファイル上にフォームを表示できるようにしておいてください。django-jsonfieldパッケージのインストール以下のコマンドでdjang
-
DjangoでMoneyフィールド(金額フィールド)を追加する方法を徹底解説
Webサイトを開発していると、給与や料金、収入といった金額に関するデータを扱う場面がよくあります。Djangoには標準で整数型のフィールドが用意されていますが、金額データの処理には必ずしも適していません。そこで便利なのが、サードパーティ製ライブラリ「django-money」です。このライブラリを使えば、通貨情報付きのMoneyフィールドをモデルに簡単に追加できます。 この記事では、django-moneyを使ってDjangoモデルに金額フィールドを実装する手順を、サンプルコードとともにわかりやすく解説します。 事前準備:プロジェクトとアプリの作成 まずはDjangoプロジェクトとアプリを作
-
Djangoのモデルインスタンスに翻訳機能を追加する方法
この記事では、Djangoの任意のモデルインスタンスに対して翻訳データを追加する方法を解説します。ID、名前、引用文、セリフなどのデータを保存し、それを複数の言語で表示したいケースはよくあります。通常はデータベース周りで多くの実装が必要になりますが、今回はわずか数行の設定で同じ結果を実現する方法をご紹介します。まずDjangoプロジェクトとアプリを作成し、urlsの設定やINSTALLED_APPSへのアプリ追加など、基本的なセットアップを行ってください。今回の作業では、views.py、urls.py、HTMLファイルにはほとんど手を加えません。主に扱うのはsettings.py、admin
-
Djangoで実現するクライアント側の画像ズーム・回転機能の実装方法
Webアプリケーションを開発していると、アップロードされた画像をユーザー側で回転したり拡大縮小(ズーム)したりしたい場面があります。そんなときに役立つのが、クライアント側で動作する画像ズーム・回転ライブラリです。HTMLファイルにjQuery関連のJSとCSSを読み込むだけで、ズームや回転の機能を簡単に追加できます。 この記事では、django-client-side-image-croppingライブラリを使って、Djangoアプリケーションに画像のクロップ(トリミング)・ズーム・回転機能を実装する手順を解説します。 事前準備 まずDjangoプロジェクトとアプリを作成し、URL設定などの
-
Djangoでスクリーンショット撮影ウェブサイトを作成する方法
この記事では、Djangoを使ってスクリーンショットを撮影できるウェブサイトを作成する方法を解説します。このサイトでは、ボタンをクリックすると画面のスクリーンショットが自動的に撮影され、画像はmediaフォルダに保存されます。保存されたスクリーンショットは、いつでも好きなタイミングで閲覧できます。プロジェクトとアプリの作成まずは、プロジェクトとアプリを作成するところから始めましょう。settings.py の設定settings.py の INSTALLED_APPS に作成したアプリ名を追加し、ファイルの末尾に以下のコードを追記します。MEDIA_URL = /media/ MEDIA_RO
-
Django – 管理画面ベースのファイル管理
ファイルや画像に関する変更は、通常フロントエンド側から行うことが多いでしょう。しかし、この記事ではDjangoの管理画面(Adminパネル)からファイルを管理する方法を解説します。サーバーからクライアントへ配信するさまざまな種類のファイルを、管理画面上で一元的に操作できるようになります。 実装例 まずは django-filer モジュールをインストールしましょう。 pip install django-filer 次に、settings.py に以下の設定を追加します。 INSTALLED_APPS = [ ... easy_thumbnails, filer,
-
Djangoでページのヒット数を記録する方法:django-hitcountの導入手順
この記事では、Djangoを使ってアクセス(ヒット)数を記録するテーブルを作成する方法を解説します。ヒット数だけでなく、いつ・どこから・どのページが閲覧されたかといった詳細なデータも保存できるため、あとから有用なレポートを生成することも可能です。それでは、さっそく始めましょう。 django-hitcountとは django-hitcountは、Djangoプロジェクトに簡単にアクセスカウンター機能を追加できるサードパーティ製ライブラリです。このライブラリをインストールしてマイグレーションを実行するだけで、ヒット数やヒットの詳細情報を保存するためのデータベーステーブルが自動的に作成されます。
-
Djangoのクエリ数をターミナルで確認してデバッグする方法
この記事では、Djangoのライブラリを活用して、データベースのクエリ実行回数をターミナル上に簡潔なレポートとして表示し、デバッグに役立てる方法を紹介します。このツールは、モデルオブジェクトへのアクセス(読み取り・書き込みのどちらでも)が発生するたびに、表形式のレポートを出力します。さらに、リクエストとレスポンスに関する情報も自動的に集計してくれる便利な機能です。 実装例 まずは、アプリの登録やURL設定など、プロジェクトの基本的なセットアップを済ませておきましょう。 次に、django-querycountモジュールをインストールします。 pip install django-queryco
-
Django REST FrameworkでJWT認証を実装する方法をわかりやすく解説
Django REST Framework(DRF)を使った開発経験がある方なら、JWT認証という言葉を一度は耳にしたことがあるでしょう。JWTは「JSON Web Token」の略称で、トークンベースの認証を実現する仕組みです。Djangoにおける認証方式として非常に人気が高く、APIのセキュリティ確保に広く活用されています。この記事では、Django REST FrameworkでJWT認証を導入し、実際に動かすまでの手順をステップごとに解説します。JWT認証とはJWT認証は、ユーザー名とパスワードを使ってトークンを発行し、以降のリクエストではそのトークンを送信することで認証を行う方式です
-
Djangoランタイムシステムチェック:django-watchmanでヘルスチェック用エンドポイントを作る方法
DjangoでWebサイトを開発していると、データベースやキャッシュ、ストレージなどの状態を確認できるURLエンドポイントがあると便利な場面に遭遇することがあります。そんなときはサードパーティ製パッケージを活用すれば、システムの稼働状況を簡単に監視でき、本番環境でも同様のチェックを行うことが可能です。 この記事では、システムチェック結果を返してくれるURLエンドポイントを作成する手順を解説します。 実装例 まず最初に、アプリとURLに関する基本的な設定をすべて済ませておきましょう。 次に、django-watchmanパッケージをインストールします。 pip install django-w