Labo288

プログラミングのこと、GISのこと、パソコンのこと、趣味のこと

シンプルなWebGIS「VanillaGIS」の紹介

はじめに オープンソースのGISにはQGISというド定番・大正義が存在しますが、インストールの手間、投影法など、若干敷居が高くなっています。ウェブ上で公開されている多数のGISデータ(国土数値情報等)の内容をすぐに確認出来る、シンプルなWebGISがあれば…

DBFファイルを変換するスクリプトを書き直した(Python3.x対応)

はじめに www.labo288.site 以前にも、DBFファイルを変換するスクリプトについての記事を掲載していました。 しかしながそこで利用していたライブラリがPython2.x系でのみ動作する枯れて管理されていないものだったため、今回、よりポピュラーなpyshp(shape…

Leafletのパフォーマンス改善について

はじめに Leafletは実装が簡単でカスタマイズ性も高く、非常に使いやすいWeb地図ライブラリですが、デフォルトの設定だと、多数の地物で構成されるベクターレイヤーの描画に、パフォーマンス上の問題がありました。要はポリゴンが多くなると途端に動作が重く…

FlaskとJavaScriptのFetch通信でダウンロードさせる方法

はじめに Flaskのレスポンスによってファイルをダウンロードさせる方法は以下のリンクのとおり3つあるようです。 qiita.comしかしながら、Fetch通信によるPOSTに対するresponseにはこれらの方法だけでは対応出来ませんでした。解決した方法を以下に載せてお…

Leaflet.jsでオーバーレイを追加する

はじめに 路線バスのShapefile(zip圧縮)を読み込んで表示する動画 なおGeoJSONエクスポート機能も実装済み 保存機能も実装はしているもののまだまだ完成は遠い それなりに大きいデータでもそこそこの速度で動作しているのがうれしい #GIS #Leaflet pic.twitt…

LeafletでGeoJsonを読み込む

はじめに オープンソースのWeb地図なら、Leafletが使いやすくてよいです。たとえばOpenStreetMapのタイル地図を実装する場合、以下のとおりです。 //地図を表示するdiv要素のidを設定 var map = L.map('map_container'); //地図の中心とズームレベルを指定 m…

ShapeファイルをGeoJSON形式に変換する

前提 zip圧縮されたシェープファイル群(.shp, .shx, .dbf)を、GeoJson形式で出力する関数です。 当然、シェープファイル群のファイル名が共通している必要があります。 また、.geojsonファイルを出力するのではなく、メモリ上での処理です。 事前にpyshp(s…

ioStreamの取扱について

はじめに Pythonでファイルの入出力処理を行う場合を考えます。私の例だと、ファイルの形式を変換して保存する処理を実装しました。この場合、ファイルの書き出しについて入門サイトでは新規ファイルをローカルに書き出して、データを追記する手順が紹介され…

DBFとCSVの相互変換ツールをWebアプリとして公開しました

更新5/15 エクセルファイル(.xls,.xlsx)のDBFへの変換に対応 ※現状、日本語が含まれていると正常に動作しません はじめに 結構前に、シェープファイルのプロパティであるDBFファイルとCSVファイルを相互に変換するPythonスクリプトを紹介しました。 www.la…

続TableviewのCell再利用の罠

はじめに 前回の記事で述べたとおり、TableViewは、画面外のセルは「存在しません」(画面内に入る直前で描写される)。 この仕様でさらにハマった点があったので追記。 ハマったところ 通常のTableViewの使い方は、セルに表示したい情報を、デリゲートメソ…

TableViewのセル再利用の罠

はじめに iOSアプリでGUIを作る際にはTableviewを使うことが非常に多いと思います。 このTableview、デフォルトだとセルのクラスはUITableViewCellで、表示出来るUIが事前に定められています(テキスト、サブテキスト等)。 たとえば画像を表示したかったり…

PythonのPDF処理まとめ(結合・分割, 画像変換, パスワード解除)

はじめに PythonでPDFを扱う方法を目的別にまとめます。 シンプルなファイル読み書き、画像への変換やパスワードロック解除等について記載します。 PDFファイル読み書き 基本的な読み書きについてはPyPDF2というライブラリを使う事で実装可能です。 pip inst…

iPhoneのGISはこれで決まり!「Map Plus」

はじめに www.labo288.site 以前に上記の記事で、iPhoneでGISを使いたいならiGIS!と紹介しました。 しかしながらiGISには致命的な弱点が存在していて、日本語で書かれたプロパティが文字化けしてしまいます。 数値は読めるので使えない事はないですが、文字…

パスワード付きのPDFを解除して保存するPythonスクリプト

はじめに 書類データといえば皆だいすきPDF、パスワード保護が可能で、その場合開くたびにパスワードを要求されます。 セキュリティ上パスワードがかかっている方が都合が良い事もありますが、パスワード無しで保存したい場合もあるのではないでしょうか。 …

PythonのGUIフレームワークPyQt(PySide)について

はじめに PythonのGUIフレームワークには以下のとおり、いくつかの選択肢があります。 PyQt PySide Tkinter Kivy TkinterはPython自体に内蔵されていたり、kivyは同一のソースでPCにもAndroidにも対応出来たりとそれぞれに特徴があります。 PyQt5は以上の定…

ゼンハイザーのノイズキャンセリング・Bluetoothヘッドホン「Sennheiser HD 4.50BTNC」レビュー

はじめに 3.5mmイヤホンジャックが廃止されたiPhoneXSやiPad Pro2018をはじめとしたパソコンやスマートフォンと、ヘッドホンなどをBluetoothで無線接続する機会が多くなりつつある昨今、無線のヘッドホンがほしいなと思い探して購入したのがこちら、「Sennhe…

PS4ソフト「Call of Duty:Black Ops4」を72時間プレイした感想

はじめに Xbox360のCoD4:MWからほぼ毎作プレイしてきている私による独断と偏見混じりのレビュー。正直毎年購入するのはもう良いかなと思いつつある今日このごろ。正直BO3の後のIWとWW2はマルチプレイで言うとプレステージ1でどちらもやめてBO3に戻っていまし…

アコギに!速弾きに!最高にオススメ出来るピック【Clayton Spike 0.56mm】

はじめに ギター弾きにとって、最高のピック探しは永遠のテーマ。ギターにはこだわるのにピックにこだわらない、そんなバカな話はありません。弦に直接触れるこの道具の重要性は語る必要はありません。そんな私がたどり着いた、現状最高のピックを紹介します…

アコースティックギターの弦溝(ノッチ)処理についての考察

はじめに アクセス解析をみていると、どうやらだいぶ前に掲載したアコースティックギターの弦溝処理についての考察記事が割と人気らしいのですが、相当わかりにくい図での説明で終わっていたので、リバイス兼ねて再度掲載させて頂きます。 弦溝(ノッチ)と…

Cat’s Eyes CE-800Mを購入しました。

はじめに 少し前の話になりますが、地元のリサイクルショップにて、Cat’sEyesのCE-800Mを購入しました。本記事ではそのレビュー等をさせて頂くものとします。 CE-800Mについて 型番から、定価が8万円のギターという事はすぐにわかります。そして末尾のMはマ…

iPad pro(2018)などのおすすめアプリ!「ショートカット(Shortcut)」

はじめに 2018年11月に発売された新型iPad proに、新型Apple PencilとSmart Keyboard Folioを併せて購入しました。今までもiPad Air2を使っていましたが、ペンとキーボードを使える事により、活用方法も大幅に広がった実感があります。そんななか、「ショー…

データ可視化特化GISフレームワーク「deck.gl」を使ってみた

はじめに 先進的なタクシー事業で有名なかのUber社によるオープンソースフレームワーク「deck.gl」を使ってみたので紹介を兼ねた感想の記事になります。このフレームワークはデータビジュアライゼーションに特化したGISフレームワークとなっております。WebG…

USBオーディオIFがiPad Pro(2018)で使えた!

はじめに 第3世代iPad Proは、従来の独自規格であるLightning端子を廃し、汎用規格であるUSB type-Cを採用しました。変換端子をかませば多様な端末を接続出来るものの、ドライバのインストールが必要なデバイスは利用出来ません。そんな縛りがあるなか、たと…

iPad Pro12.9inchとApple Pencil、Smart Keyboard Folioを買ったぞ!

はじめに Appleより、2018年10月に新型のiPad Proと関連アクセサリーが発表され、11月に発売されました。 www.apple.com ご存じのとおり、iPhone X等と同様にホームボタンを廃したうえでの全画面化となっております。 iPad Proに関してはベゼルレスとまでは…

iPhone、iPadで無料で使えるGISアプリ「iGIS」

2019/10/28告知 iPhoneで使える簡易GISを作りました。 GeoJsonの読み込みに対応しています。 www.labo288.site はじめに GISを使う必要のある職場であるならば、おそらく現地踏査等の業務があるかと思います。事務所にはGISを搭載したパソコンがあるけれども…

シェープファイルの.dbfファイルと.csvファイルを相互変換する

2019/7/2Python3.x系対応版を公開しました www.labo288.site 2019/5/2ウェブアプリ版を公開しました www.labo288.site はじめに 一般にシェープファイルとはいわゆるベクター図形データと理解されていると思いますが、図形にはプロパティと呼ばれるデータが…

自宅の作業環境の話

プロのプログラマーでもないけれど、自分の作業環境にはこだわりたいもので、試行錯誤しつつ自分なりの環境を整えました 以前は据え置きはデスクトップ一択で、それ以外の用途でノートパソコンを使おうと考えていましたが、今はMacbook Proと外部モニターの…

2000円くらいでメカニカルキーボードを買った話

メカニカルキーボードの軽快な打鍵感で作業効率アップ プログラマーならUS配列 そんな通説迷信に踊らされるまま、Amazonで中華キーボードを物色し、こちらを購入 https://www.amazon.co.jp/gp/product/B07C9CGLWR/ (アフィじゃないです) このページでは売…

未経験から1ヶ月かけてつくったウェブアプリ

https://travelmap-onrails.herokuapp.com/ TravelMapというウェブアプリです 海外旅行レビューサイトというつもりでつくりました WebフレームワークはRuby on Railsを利用しています 頭の中の理想形には届いてない感じですが、現状の知識、モチベ等勘案しこ…

Ruby on RailsのDBからJavascriptへの値渡し

Webサービスを作ろうと思って、はじめは使い慣れたPythonのWebフレームワークである「Django」を使っていたものの、詰まったので気分転換に「Ruby on Rails」を導入してみたところ、非常によい、使いやすい。 で、作っていくとJavascriptに、データベースか…