20211012

20211012

以下の修正

①Kronaのグラフ作成のコードの冗長性を排除

metasearch_exec.shの中でのKronaグラフの作成をfor文で回すことで冗長性を排除。

②以下の要望を受けて修正

追加で要望なのですが、今は各サンプルでトップ10のものだけ表示にしてもらっていますが、多様性の高いサンプルだとこれでは半分以上がOthersでまとめられてしまうこともあるので、トップ100まで表示するように変更して頂けますでしょうか?

こちらの仕様を追加するためにcreate_graph.pyを修正。

req.bodyにデータが格納される。

let capturedSampleList = req.body['capturedSampleList[]']

同期的にファイルを読み込むには、fs.readFileSyncメソッドを使う。readFileだと非同期的にファイルを読み込むので、読み込み後に行いたい処理を先に行ってしまう。

capturedSampleList.forEach(sample => {
    sampleData = fs.readFileSync("inputFiles_with_japanesename/" + sample + ".mitodb.withJapaneseName.input", "utf-8");
    sampleList = sampleData.split("\n");
    for (let i = 1; i < sampleList.length; i++) {
        fishData = sampleList[i].split("\t");
        if (fishData[0] in fish_comp) {
            fish_comp[fishData[0]] += parseInt(fishData[1]);
        } else {
            fish_comp[fishData[0]] = parseInt(fishData[1]);
        }
    };
});

これで魚種組成を取得できる。

OpenStreetMapで地図の情報はPBFフォーマットという形式で保存されていて、それの一括ダウンロードは可能。 https://download.geofabrik.de/ そして、PBFから画像を取得するには、どうやらspecial softwareが必要みたいで、幾つか選択肢が書かれている。 https://www.geofabrik.de/data/download.html 一番今の実装に近いのは、Tile serversを構築することかなと思いました。 具体的には下記のdockerを使えば、簡単にセットアップできそうな感じはしました。 https://switch2osm.org/serving-tiles/using-a-docker-container/ 上記ページに、 http://your.server.ip.address/tile/0/0/0.png で地図が取れるよ、と書いていて、今の伊藤くんがajaxで取得しているパスと一緒なのではないでしょうか? どうでしょう?

  • 20211012.1634029228.txt.gz
  • 最終更新: 2021/10/12 09:00
  • by 133.11.144.10