Mini Tokyo 3D バージョン 2.7.0 リリース

Mini Tokyo 3D バージョン 2.7.0 がリリースされました (GitHub)。2.6.0 からの追加・修正機能を見ていきましょう。 ライブカメラ映像の配信 Mini Tokyo 3D にライブカメラ映像の配信機能が登場しました。地図上のライブカメラボタンをクリックすると、カメ…

時間経過とともに色合いが変わる地図の作成

この記事は Mapbox Advent Calendar 2020 の23日目の記事です。 Mapbox GL JS では地図がベクトルタイルとして配信されるがゆえに、クライアント側で自由に描画をカスタマイズできるという利点があります。例えば、マップをモノクロ白地図風にしたり、ダーク…

Mapbox GL JS のポップアップをアニメーション化

この記事は Mapbox Advent Calendar 2020 の13日目の記事です。 Mapbox のポップアップ(吹き出しで情報が表示されるやつ)って、実にシンプル、言い方を変えるとあまりに素っ気ないんです。こんな感じ。 一応独自のクラスを指定したり、2日目の記事のように…

Mini Tokyo 3D バージョン 2.6.0 リリース

Mini Tokyo 3D バージョン 2.6.0 がリリースされました (GitHub)。2.5.0 からの追加・修正機能を見ていきましょう。 経路検索にリアルタイムの遅延情報を反映 バージョン 2.5.0 で未実装になっていた、リアルタイムの遅延情報の経路検索への反映を行うように…

Mini Tokyo 3D で学ぶ 〜 今日から君も東京交通エキスパート

小学生のつばさ君と、交通に詳しい謎の齧歯類風生物チュー太先生の会話を通じて、Mini Tokyo 3D の使い方をインタラクティブに紹介する子供向けコンテンツ。Google の検索結果に出てこないので、クロールされるようにここにリンクを貼っておきます。

Mini Tokyo 3D バージョン 2.5.0 リリース

Mini Tokyo 3D バージョン 2.5.0 がリリースされました (GitHub)。2.4.0 からの追加・修正機能を見ていきましょう。 経路検索機能が新登場 しばらく構想を温めていた、経路検索(乗り換え案内)機能を追加しました。ルートを3Dマップ上で見ながら複数の経路…

Mini Tokyo 3D バージョン 2.4.0 リリース

Mini Tokyo 3D バージョン 2.4.0 がリリースされました (GitHub)。2.3.0 からの追加・修正機能を見ていきましょう。 JR成田線我孫子支線が全線開通 成田線我孫子支線が我孫子〜成田間全線開通しました。常磐線快速列車の一部が我孫子から成田まで乗り入れて…

Mini Tokyo 3D バージョン 2.3.0 リリース

Mini Tokyo 3D バージョン 2.3.0 がリリースされました (GitHub)。2.2.0 からの追加・修正機能を見ていきましょう。 JR八高線の八王子〜小川町間、川越線の川越〜高麗川間が開通 八王子と高崎を結ぶJR八高線の、八王子から東武東上線と接続する小川町までが…

Mini Tokyo 3D バージョン 2.2.0 リリース

Mini Tokyo 3D バージョン 2.2.0 がリリースされました (GitHub)。2.1.0 からの追加・修正機能を見ていきましょう。 東武伊勢崎線の東武動物公園〜久喜間、千葉モノレールが全線開通 東武伊勢崎線は、浅草から東武動物公園までの「東武スカイツリーライン」…

Mini Tokyo 3D 開発者向け機能の提供をスタート

ほぼ 1 年前から開発を開始した、東京の公共交通のリアルタイム3Dマップ Mini Tokyo 3D のバージョン 2.1 をリリースしました。 おかげさまで Mini Tokyo 3D は第3回東京公共交通オープンデータチャレンジで最優秀賞を受賞したほか、2019年度 VLED 勝手表彰…

Chart.js のチャートを格段に綺麗に見せるカラーパレットプラグイン

動的なチャートを作って Web ページに貼り付けるのに Chart.js はとても便利ですが、難点は1つずつ色の指定をしなければいけないところです。例えばこんな感じで棒グラフを作るとして、Dataset ごとに背景色を指定する必要があります(色を指定しないとグレ…

拡大縮小・スクロールを無効にする方法がiOS 11.3 Safariで効かなくなった問題と解決法

その昔、スマホ向けWebページの拡大縮小・スクロールをさせたくない場合にはviewportにuser-scalable=noを指定するという手軽な方法が利用可能でしたが、2016年のiOS 10のリリース以降はこの方法が使えなくなったため、JavaScriptを使ってtouchstartイベント…

Drawing a real-time Bitcoin chart using Chart.js

(*日本語の記事はこちら) Chart.js is a popular JavaScript chart library that enables to create dynamic, beautiful charts easily. I recently made chartjs-plugin-streaming, a Chart.js plugin for live streaming data with the auto-scroll featur…

Bitcoin のリアルタイムチャートを Chart.js で表示する

(*English translation is here) Chart.js は動的で美しいチャートを手軽に作ることができるポピュラーな JavaScript ライブラリです。先日、リアルタイムストリーミングデータの表示に便利な自動スクロール機能を実装した chartjs-plugin-streaming プラグ…

HDFS Snapshot + distcp と MapR-FS Volume Mirroring の違い

MapR は HDFS の代わりに MapR-FS を使用している Hadoop ディストリビューションです。性能の向上、信頼性の向上、ランダムリードライト可能なNFS、NoSQL データベースとの統合、メッセージングキューとの統合、・・・と MapR-FS のメリットは挙げればきり…

2016 年に向けた注目の新機能の開発状況

この記事は Apache Drill Advent Calendar 2015 の25日目の記事です。 2015年もあとわずか。今回は Drill の JIRA チケットや GitHub を眺めつつ、2016年にどんな新機能が出てきそうか興味のおもむくままにご紹介しましょう。 Cassandra ストレージプラグイ…

Drill のユーザ認証とインパーソネーション

この記事は Apache Drill Advent Calendar 2015 の24日目の記事です。 今回は、Drill のセキュリティを向上させる2つの機能、インパーソネーションとユーザ認証について紹介します。 インパーソネーション Drill には、クライアントから要求されたアクション…

Parquet のパーティショニングによる性能最適化

この記事は Apache Drill Advent Calendar 2015 の23日目の記事です。 Drill では Parquet フォーマットを使うことによって、パーティションプルーニングによる性能上のメリットを得ることができます。パーティションプルーニングとは、アクセスするパーティ…

Drill Web UI のビジュアルなクエリプロファイル

この記事は Apache Drill Advent Calendar 2015 の22日目の記事です。 Drill のパフォーマンスチューニングに役立つ情報の一つはクエリプラン、そしてもう一つはクエリプロファイルです。今回はクエリプロファイルでどんな情報が見られるかを紹介していきま…

クエリプランの見かたとハッキングの方法

この記事は Apache Drill Advent Calendar 2015 の19日目の記事です。 SQL が動いて正しい結果が返ってくればよい、というのであれば必要ないのですが、パフォーマンスが気になり始めたらクエリプランとプロファイルを調べていく必要が出てきます。 SQL が発…

Drill 内部のジョインストラテジー

この記事は Apache Drill Advent Calendar 2015 の18日目の記事です。 一般的な RDMBS のジョインアルゴリズムには、代表的なものとして ネストループ結合、マージ結合、ハッシュ結合などがあります。それぞれレコードへのアクセス方法や順序などが異なって…

HBase データソースに対する Pushdown (2)

この記事は Apache Drill Advent Calendar 2015 の16日目の記事です。 前回の記事からの続きです。 前回は HBase テーブルを対象としたクエリに WHERE 句で条件を加えることで、HBase 側で Pushdown を行う実行プランが作成されている様子を確認しました。で…

HBase データソースに対する Pushdown (1)

この記事は Apache Drill Advent Calendar 2015 の15日目の記事です。 HBase は Hadoop 上で動作する、「ワイドカラム型」NoSQL データベースです。RDBMS 風のテーブル構造を持ちますが、固定のスキーマを持つわけではないのでデータ構造の変更には柔軟であ…

テキストファイルとNULLの扱い

この記事は Apache Drill Advent Calendar 2015 の14日目の記事です。 CSV 形式などのテキストファイルでどのように NULL を表現するかは、CSV を出力する RDBMS やアプリケーション毎に異なっているので結構悩みのタネですね。 Oracle(SPOOL を使用): 引…

Drillbit が使用するメモリサイズ

この記事は Apache Drill Advent Calendar 2015 の12日目の記事です。 Drill クラスタを構築する場合、各ノードで Drillbit という Java プロセスを立ち上げます。Drillbit は、ノードに常駐するデーモンプロセスとしてクラスタ全体で協調して動作することで…

クエリ毎のリソース制御について

この記事は Apache Drill Advent Calendar 2015 の11日目の記事です。 Drill クラスタを構築して、ある程度規模の大きい SQL クエリ基盤を運用する場合、普通は複数のユーザーや複数のアプリケーションで Drill クラスタを共有する使い方をすると思います。…

CSV ファイルを Parquet ファイルに変換してクエリを高速化

この記事は Apache Drill Advent Calendar 2015 の8日目の記事です。 Apache Drill では Apache Parquet という大規模データの分析に適したデータフォーマットを利用することができます。Row-oriented フォーマットにカテゴリ分けされる CSV、TSV といったテ…

改行コード (CRLF) に注意

この記事は Apache Drill Advent Calendar 2015 の7日目の記事です。 改行コードの取り扱いは、現時点での Drill の注意事項の一つです。Linux/Mac の環境で生成されたテキストデータであれば問題は起きませんが、Windows 環境で生成されたテキストデータ(…

MSX-BASIC の1画面プログラミング技術

MSX

この記事は MSX Advent Calendar 2015 の6日目の記事です。 1980年代に MSX・FAN という雑誌にファンダムという MSX-BASIC プログラム投稿コーナーがあり、私も投稿して腕を磨いていたものです。で、ファンダムでは1画面プログラム部門、N画面プログラム部門…

ネストデータのカラム指定方法について

この記事は Apache Drill Advent Calendar 2015 の5日目の記事です。 通常の SQL はリレーショナルデータを対象とするため、テーブルは行と列からなるフラットな構造です。SELECT 文で特定のカラムの値を取り出すには、単にカラム名を指定するだけです。 し…