投稿

2月, 2021の投稿を表示しています

最新の雨雲レーダから画像データを取得する

イメージ
1.概要 国土交通省が情報提供しているリアルタイムレーダー観測雨量の地域ブロック別に分割されている観測画像を一括して取得し、一覧画面として 表示します。地域ブロックは、全国、沖縄地方、九州地方、四国地方、中国地方、近畿地方、中部地方、北陸地方、関東地方、東北地方、北海道地方 で全国を含めて計11の地方ブロックとなっています。データは国土交通省の雨雲レーダーの最新更新時の画像データを取得・表示します。 2.レーダー観測雨量の取得 ※【注意】河川の防災情報がリニューアルされたため、情報の取得ができませんので、提供を中止します。 利用は不可です。 レーダー観測雨量の取得は、Excel VBAにて作成したマクロで取得・表示します。観測データは、画像ファイルとなっていて イメージ情報として、地域エリアコードと時と分を組み合わせたものがURLのパラメータとして渡されます。 取得画像形式は、gif形式となっています。 Excel VBAマクロで作成した、 国土交通省_レーダ観測雨量取得.xlsm を起動すると、自動で取得して一覧表示させています。 再度、時間をおいて実行する場合は、レーダー観測雨量ボタンをクリックします。.また、手動で画面のクリア(消去)する場合は、 消去ボタンをクリックします。取得時には、取得前に消去させていますので、手動消去は必要ありません。 3.ソースコード 下記のリストは、 国土交通省_レーダ観測雨量取得.xlsm のソースコードです。 ALT+F11でVBE(エディタ)を開いて、ソースコードを確認して下さい。 ThisWorkbookは、起動時の処理のため、Workbook_Open()で Worksheets("MAIN")のGetUryouを呼び出して 自動的にレーダー雨量観測画像データを取得しています。 次に標準モジュール : APIModは、Sheet1(MAIN)で利用するWindows APIを3つ定義しています。 Sleep 関数は、待ち時間を指定するものです。 ShowWindow 関数は、ウィンドウを最大化するか最小化するかの動作をさせるためのものです。 URLDownloadToFile 関数は指定URLのファイルを、指定パスにダウンロードするためのものです。 Shee

東海道五十三次基本情報を纏めてみた

イメージ
1.概要 コロナ渦の中で、旅行にも行けず外出も自粛している人も多いのではないでしょうか?せめて旅行気分を 味わってみようと、地図上で東海道五十三次を巡っています。東海道五十三次については、当ブログ記事で ルートマップ として公開しています。 その地図の作成過程で調べた資料を纏めて見ました。地図のスライドメニューからのリンクでも閲覧できるようにしていますが、 せっかく作成したコンテンツが埋もれてしまうので、紹介することとしました。 2.宿場の概要と距離換算表 東海道五十三次基本情報として、宿場の概要と距離の換算表の二種類について纏めてみました。 宿場の概要を纏めるに当たり、下記サイト様を参考とさせて頂きました。 ●出典・引用・参考サイト 1.距離データは、下記サイトで提供している計算ツールにて得られた結果を利用しました。 ・keisan 江戸 ウオーキング東海道五十三次 2.浮世絵画像は、下記サイトで提供している画像ファイルを利用しました。 ・浮世絵著作権フリー作品「東海道五十三次」 3.掲載されている五十三次の一覧より宿場名や距離、リンクされる各宿場の概要を参考     および一部を抜粋しました。 ・ウィキペディア(Wikipedia)「東海道五十三次」 4.東海道への誘いのQ&Aから五十三次の意味について参考・引用しました。 ・「東海道への誘い」 国土交通省関東地方整備局 横浜国道事務所 2-1.宿場の概要 東海道は、江戸日本橋の武蔵国から相模、伊豆、駿河、遠江、三河、尾張、伊勢、伊賀、近江、山城の国々を通り、 京都の 三条大橋まで五十三次あります。その総距離は約490kmでありました。徳川家康は、慶長6年 (1601年)に東海道に 宿駅伝馬制度を敷き、街道沿いに宿場を設けました。公用の旅人や物資の輸送は無料で次の宿駅まで送り継ぐという制度でありました。 輸送の範囲は原則として隣接する宿場までで、これを越えて運ぶことは禁止されていました。 東海道には江戸から京都までの間に 53の宿場があり、江戸から京都まで物資を運ぶ場合は53回の継ぎ替えをする ことから「五十三次」と呼ばれるようになったようです。 DEMO    宿場の概要 2-2.距離換算表 東海道五十三次は、江戸日本橋を起点として各宿場

HSPで年間カレンダを作る

イメージ
1.概要 別記事で 「HSPで万年カレンダを作る」 を紹介しましたが、今回は、万年カレンダと連携する 年間カレンダを紹介 します。 年間カレンダもHSP(Hot Soup Processor)で作成しています。HSPについては、公式サイトを確認して下さい。 誰でも無料で利用できて、利用に関しての制限もありません。個人での趣味としてのプログラミング環境としては最適だと思います。 本格的なゲームや実用的なツール類も多く開発されていて、今後の進化が益々楽しみなプログラミング言語です。 プログラミング言語HSP公式サイト : HSPTV URL : http://hsp.tv/index2.html 2.年間カレンダ デスクトップアクセサリとしての年間カレンダ です。祝祭日や振替休日にも対応させています。機能は、 万年カレンダ(単年用)と同じです。 カレンダの左矢印ボタンは、前年へ移動、右矢印ボタンは、 翌年へ移動として対応年のカレンダを表示します。 マウスの左ボタンクリックのドラッグ操作で デスクトップ画面上のどの位置にも自由に移動、配置可能です。終了時は、配置位置を記録し 次回起動時に反映します。 ダウンロードしたら、デスクトップ画面の右上などの邪魔にならない位置に配置して利用して頂けたら と思います。初期起動時は、画面左上に配置されるようにしています。 3.ソースコード ソースコードは、年間カレンダ(yearcal.hsp)とHSP Calender module (calmod.hsp)の2本ですが、HSPユーザー向けに参考として、 ここに掲載するには少し長すぎるので、万年カレンダと同様に一式ダウンロード提供します。ただし、説明書類は添付しませんので、 操作方法については、当ブログの記事の説明を参考にして下さい。ソースコードの内容は自力で読み取って下さい。 万年カレンダ については、別記事で紹介済みです。 4.ダウンロード 提供するソースコードのライセンスは、 CC0 (クレジット表示不要、改変可、商用可) とします。自由に利用して頂いてかまいません。 年間カレンダ(yearcal.exe)は下記からダウンロードして下さい。万年カレンダ(calender.exe)分もソースコードを一式同梱しています。 その他、そのまま実行形式

HSPで万年カレンダを作る

イメージ
1.概要 HSPというプログラミング言語をご存じですか?20年以上前から開発が続けられている国産のスクリプト言語です。 毎年、プログラミングコンテストも開催されていて、多くの優秀な作品が応募されています。最近は、M-1グランプリで 優勝した野田クリスタルさんが、自作ゲームの開発にHSPを利用していることで話題となっています。 筆者も当ブログでも紹介している 「テキストファイルマージツール(tfmarge)」 などのようなツール類や 小物のアクセサリー類を作成しています。今回は、過去に作った作品の中で定番とも言えるカレンダソフトの 「万年カレンダ」を紹介 します。カスタマイズ機能などもないシンプルなものですが、日頃から愛用しているものです。 宜しかったら、ダウンロードして使ってみて下さい。 2.万年カレンダ デスクトップアクセサリとしての単年用カレンダ です。祝祭日や振替休日にも完全対応させています。 また、年間カレンダも起動できるようにしています。 カレンダの左矢印ボタンは、前月へ移動、 右矢印ボタンは、翌月へ移動として対応月のカレンダを表示します。尚、本日(今日)は目印として 日付に緑色としてマーキングしています。 マウスの左ボタンクリックのドラッグ操作でデスクトップ画面上 のどの位置にも自由に移動、配置可能です。終了時は、配置位置を記録し次回起動時に反映します。 尚、 年間カレンダ は、当ブログの別記事で紹介予定ですので、今回は説明致しません。 ダウンロードしたら、デスクトップ画面の右上などの邪魔にならない位置に配置して利用して頂けたら と思います。初期起動時は、画面左上に配置されるようにしています。 3.ソースコード ソースコードは、万年カレンダ(calender.hsp)とHSP Calender module (calmod.hsp)の2本ですが、HSPユーザー向けに参考として、 ここに掲載するには少し長すぎるので、年間カレンダ分も含めて一式ダウンロード提供します。ただし、説明書類は添付しませんので、 操作方法については、当ブログの記事の説明を参考にして下さい。ソースコードの内容は自力で読み取って下さい。年間カレンダは、別記事で扱いますのでご了承願います。 4.ダウンロード 提供するソースコードのライセンスは、 CC0

Excelデータとpdfデータを相互変換する方法

イメージ
1.概要 会社や個人レベルの業務や作業にExcelやpdfファイルを利用する機会も多いと思います。多くの企業は、経営情報や生産管理、メールなどの コミュニティ手段、オンライン会議といった企業の基幹となる部分は投資してシステム化を進めていますが、それらのシステムなどから提供される 情報の編集や加工などはExcelが主なツールとなっているのが現状ではないでしょうか?最近では、時短要請や在宅勤務の推進を含めた効率化 が叫ばれています。脱Excelと言われて久しいのですが、当分、難しいと個人的には感じています。 話が少し逸れてしまいましたが、Excelからpdfへの変換はExcelのファイルに名前を付けて保存時に保存形式をpdfに指定してあげれば、簡単に できるので良く利用していると思いますが、逆に pdfからExcelにデータを取り込めることは、意外に知られていません。 今回は、 Excelデータとpdfデータを相互変換する方法 について紹介して行きます。 2.Excelとpdfファイルの相互変換 Excelからpdfへの変換出力について知らない人はいないと思いますが、参考程度に簡単に触れておきます。 画面例は、ご利用のExcelのバージョンによって多少異なりますが、操作として概ね同じと思います。 既に普通に実施しいる 操作なので、ご存じない人のみ読んでみて下さい。 2-1.Excelからpdfへの変換出力 (1)pdf形式として変換出力するExcelを通常通り開きます。(画面例はテスト用のサンプル) (2)印刷時にはみ出さないように印刷プレビューで予め確認して、改ページプレビューします。      (印刷書式を調整します) (3)「ファイル」→「名前を付けて保存」→拡張子選択のプルダウンをクリックして、PDF(*.pdf)を      選択します。ファイルの保存先を指定後、保存ボタンをクリックすれば、pdfファイルとして      出力されます。 (4)指定した保存先にpdfファイルとして保存されます。Adobe Acrobat Readerがインスト―されて      いれば、 PDFReaderで閲欄出来ますが、インストールされていない場合は、デフォルト設定さ      れているブラウザが開いて確認できます。 2-2.pdfか

複数のファイルをマージする

イメージ
1.概要 パソコンで色んなデータを扱う場合、複数ファイルの連結(マージ)する作業は比較的多いと思います。 筆者の場合は、Excel VBAやPythonなどで作成したスクレイピングプログラムでWeb上から収集したデータを CSVなどに出力して加工する場合も多いです。このようなデータを蓄積して1つのファイルに連結(マージ)後、 DB(データベース)を新規作成して、初期インポート用のファイルとして利用しています。 定期的に決まったフォーマットで同じ作業のものは、簡単なバッチファイル(bat)を作って実行させています。 バッチファイルは、 WMI (Windows Management Instrumentation)や Power Shell の登場で枯れた技術のように 思われがちですが、企業のIT部門などでは、まだまだ、広く利用されていて現役で活躍しています。 手軽で簡単であり、高速性を求めなければ便利ですね。ただ、会社なとでバッチファイルを他の人に使わせようとした時に、 マージ対象とするファイルやディレクリ―が変更となった場合やマージ後の出力ファイル名が他のシステムと 関連していたりすると、当然変更が必要となるため、その都度、作成者が面倒を見ることになります。 そのような事情から、 他の人が使うことを前提とした場合は、GUIで操作画面がある実行形式(exe)のツール があった方が便利 です。今回は、筆者が作成したマージツールを紹介します。 2.ファイルマージツール 2-1.ソースコード 概要で説明しましたが、バッチファイルによる簡単なサンプルを載せておきます。下記のサンプルですが、 必要に応じて、9行目のタイトル名と17行目の処理対象ファイルの拡張子(ワイルドカード)とマージ後の出力ファイル名 を適時修正して利用して下さい。マージ対象ファイルが格納されているディレクトリーは指定していませんので、 追加するか、同一ディレクリ―にバッチファイルを置いて実行させて下さい。どこにでもある簡単なものですみません。 雛形として利用して頂けたらと思います。バッチの命令としては、 type命令 か copy命令 で同等の処理ができますが、 copy命令 の方が やや高速に処理 できるようです。 @echo off setlocal cd /d %~dp0

地震の発生履歴情報を集計して纏める

イメージ
1.概要 現在から過去に発生した地震の履歴情報をwebサイトから定期的に取得して畜積していますが、年度別、月別、震度別といった区分けで 集計して 統計的にまとめて 見ました。データを集めるだけでは何の役にも立たないので有効活用できないものかと模索しています。 データの取得方法には、色んな手段がありますが、筆者の場合は定期的および継続的にデータの差分を取得する仕組みをExcel VBAで作成 して活用しています。今回は データ取得後の蓄積データの活用方法について紹介 します。 2.地震発生履歴情報の取得方法 2-1.データ取得先の調査 データを取得するに当たり、どのサイト様からデータを入手するのが良いのか調べてみると、下記のサイト様に必要とすべき地震履歴データが掲載されていました。 ■気象庁 : 地震情報(震源・震度に関する情報) URL : https://www.jma.go.jp/jp/quake/quake_singendo_index.html データの表示文字が全て全角表示であり、過去分まで遡って取得できそうにない。 ■tenki.jp : 過去の地震情報 URL : https://earthquake.tenki.jp/bousai/earthquake/entries/ 最大震度の部分が画像で表示されているので、取得処理がめんどくさそうである。 過去分のデータ件数が約30,000件とYahoo!地震と比べて登録数が少ない。 ■goo : 地震一覧 URL : https://weather.goo.ne.jp/earthquake/list/ 過去分のデータ件数が約16,000件とYahoo!地震と比べて登録数が少ない。 また、マグネチュードが掲載されていない。 ■Yahoo! : 履歴一覧 URL : https://typhoon.yahoo.co.jp/weather/earthquake/list/ 過去分のデータ件数が約42,000件と豊富である。 また、必要な項目の並びやデータ項目がある。 ページのソースコードを確認して見ると、取得する箇所がTABLEタグで作られており スクレイピングで取得し易い作りとなっている。 以上の調査結果から、 Yahoo! 履歴一覧から取得 し

地震や気象情報を活用して防災に努めよう

イメージ
1.はじめに 近年は地震や台風、大雨による洪水など大きな災害になることが多いですね。13日の23時8分頃に福島県沖を 震源とする震度6強の地震が発生しました。10年前の東日本大震災時の記憶が甦ってきました。 被害に遭われた方々にお見舞い申し上げます。「災害は忘れたころにやってくる」という言葉があるように 過去の災害の教訓を生かして防災や減災に努めていきたいと思います。 この機会を生かして忘れない内に非常持ち出しや備蓄・備品など個人レベルでできることを再チェックして行きます。 また、災害発生時や発生前後に自分がどのように行動すべきかを正しく判断するために情報の収集が欠かせません。 2.防災情報収集ソフトについて 地震や気象情報は、テレビやインターネットなどで多くの情報が発信されています。 筆者の場合は、地震や気象情報でパソコンでリアルタイムに情報を収集して自己防衛的に監視しています。 もちろん、スマホにも無料で提供されているアプリをインストールして利用しています。 筆者のお勧めなソフトとして、compo031氏が開発されている地震を常時監視して発生時にリアルタイムに強震モニタ、緊急地震速報、地震津波情報を表示するソフトウェアです。 詳しい情報は、下記のウェブサイトに掲載されており、ダウンロードもでき、無料で利用することができます。 kiwimonitor (compo031氏) URL : https://kiwimonitor.amebaownd.com/ 気象情報は、ブラウザでリアルタイムに表示できる有名なWindyというソフトウェアです。windyは、ウィンディドットコムというリアルタイム天気予報サービスを世界中に提供するチェコの企業が開発した ものです。台風シーズンなどでは、台風の進路や風や雨の状況の確認などで非常に重宝しています。 Windy '(Windy.com) URL : https://www.windy.com/ この他にweb上の情報収集として、フェイクニュースもあるので、政府発表情報や気象庁、国土交通省(川の防災情報)などからリアルタイムに変化する情報を 見て自分自身で現状の状況を正しく判断するようにしています。 余談ですが、筆者はブラウザでネットサーフィンして情報収集していますが、パソコンのデス

Web上の複数ページを自動巡回してPDFへ出力

イメージ
1.概要 Web上のページを仮想プリンタへ出力する場合は、ブラウザの印刷出力でPDF出力できます。また、ブラウザの拡張機能でプラグインを インストールしてアイコンをクリックするだけでPDF出力することもできますが、複数ページを連続してまとめて自動出力できれば 便利だと思います。筆者の場合は、個人の学習目的としてExcelやPython等のプログラミング講座やサンプルを掲載 しているサイト様から情報収集しています。少しでも個人レベルで 時間や労力の削減を目的として効率化 を図っています。 今回は、Excel VBAで自作した Web上の複数ページを自動巡回してPDFへ出力する方法 について紹介します。 2.作業手順 まずは、情報収集のための準備作業です。検索エンジンでググったりして自分が必要とすべき情報があるサイトを見付けに行きます。 これは普段から誰でもやっていることですね。この作業がネットにおいては何よりも重要な作業だと思います。 目的とするページが見つかったら、サイトのURLをメモ帳などにメモっておきます。 以降は、Excelのマクロを実行しての作業となります。少しだけ面倒なのですが、2種類のVBAマクロを利用します。 (1)指定URLのリンク取得.xlsmを起動して該当先(Webページ)のリンク一覧を取得します。     リンクの取得が完了したら、指定URLのリンク取得.xlsmを閉じます。 指定URLのリンク取得.xlsmの起動画面 (2)リンク取得が完了したら、日付時刻形式のブックファイルとして出力されるので開いて確認します。 PDF出力しない不要な行の削除とタイトル項目名(PDF出力する時のファイル名) を必要であれば変更します。 リンク取得後の出力済みファイルの不要行の削除とファイル名の調整 (3)項目名の先頭に番号(連番)が付加されているがなければ連番を付加しておくと良いです。 事前に手間でも、この作業をしておくとファイル出力後、番号順にファイルが並ぶので管理し易いです。ファイルは閉じずに上書き保存してこの状態にしておきます。 項目名の先頭に番号(連番)を付与 以上が準備作業です。ここからの作業は、上記で取得編集したリンクファイルを利用しての WebページのPDF出力です。 (4)Webページを仮想プリ

通常のプリンタをバッチで切替える

イメージ
1.概要 コロナ渦で企業などでは多くの人がテレワークで自宅で仕事をする人が増えていると思います。また、最近は新しい 働き方や時短といった要請で仕事の効率化なども取り組みが強化されつつありますね。 自宅で仕事をしていて困ったことは、プリンタでの印刷処理があります。間違って印刷出力させると当然プリンタの出力先は 会社の複合機などへ出力されてしまいます。紙で出せないよと焦ったことを経験した方も多いんじゃないのな と想像できます。システムからの自動出力させるものなども有り、入力チェックのために紙で出力して用済み後は廃棄している といった事例も多くあります。電子化すればペーパーレスで業務の効率化が図れます。 今回は、 通常のプリンタ出力を仮想プリンタへの出力に切り替えてPDF化 するための方法を紹介します。 2.プリンタの切替方法 プリンタをデフォルトプリンタに設定する方法は、通常コントロールパネルのデバイスから設定するプリンタを選択して、既定として設定するをクリックします。 下記は、仮想プリンタの設定をするために Microsoft Print to PDFを既定としています。また、不定期に会社に出社して紙に印刷する場合もあるので また、同じようにして通常のプリンタに戻したりします。 仮想プリンタに設定しておけば、印刷出力はPDFとして出力されるので書類の電子化 が図られます。 この様な作業を毎回するのが非常に面倒になりました。そこで、バッチファイルbat)を作成してワンクリックで切替できるようにしました。 バッチファイルをデスクトップにショートカットを作成しておけば操作も簡単です。 prvirtual.bat は仮想プリンタを既定のプリンタに設定するバッチファイルで、 defsettprt.bat は通常使うプリンタを既定のプリンタに設定するバッチファイルです。 @echo off setlocal cd /d %~dp0 echo. echo. echo *********************************************************** echo. echo 仮想プリンタに設定する処理 echo. echo *****************************************

日本海産魚類目録分類図の可視化

イメージ
1.日本海産魚類目録分類図 データの可視化(視覚化)の第三弾として、 鳥類目録 、 哺乳類目録 に続き 魚類目録の可視化 を行って見ます。 データの作成手順 や可視化の手法は、鳥類目録とほぼ同じですが、入手できる元となるデータが鳥類目録の場合は Excel の表形式で提供されてい ましたが、魚類目録の場合は探して見ましたが加工しやすい形式のものは見つかりませんでした。使えそうなものとして PDF 形式の 「日本海産魚類目録(予報)」というものがありました。 今回は、この PDF 形式の目録リストを利用することにしました。 2.データ作成手順 まずは、魚類目録の可視化をするために「日本海産魚類目録(予報)」をダウンロードします。 1. 下記のサイトより、日本海産魚類目録(予報)(5-94.pdf)をダウンロード     (出典: 資料提供元(敬称略) :著者 : 河野光久 ・土井啓行 ・堀 成夫)     データダウンロード先: http://jsnfri.fra.affrc.go.jp/pref/yamaguchi/kenpo/9/pdf/65-94.pdf ※2.以降の手順は、筆者が行った参考手順ですので読み飛ばしてもOKです。 2.ダウンロードした PDF ファイルを開き、P7~P30(PDF のページ番号)を参照します。 3.P7~P30(PDF のページ番号)までを選択してコピーします。     (※PDF からテキストを抽出するがあれば、それを利用するのも良いでしょう) 4.コピーしたデータをそのままメモ帳などのテキストエディタに貼り付けます。 5.英語名部分などは今回使用しないので、データを目視しながら可能な限り不要部分を     削除します。また、文字化けした部分も多々あるので注意深く削除します。 6.重複データや他に文字化けがないかチェックして、Excel に取り込む形式にするため、     目名、科名、種名を TAB でインデントします。 7.TAB でインデントできたら、一旦、fish.txt としてセーブします。 8.新規に Excel を開き、データ→テキストファイルで fish.txt をインポートします。データ形式は、     すべて文字列としておいて下さい。 9.インポートできたら

TOP