ソフトウェア

Atom

きのう、ツイッターでこんなのを目撃した。

イメージ 1


Atom だ。
かねがね小耳に挟んではいたが、“最強”などと言われるとココロ穏やかではない。

というわけで、

# emerge app-editors/atom

関連ライブラリも入れると、インストールに8時間ほど要した。


起動したところ:

イメージ 2


以下、TeXWiki にある手順に従って、
LaTeX 用のパッケージをいくつか導入&設定。
LaTeX 環境の整備

ちなみに、我輩は古式ゆかしく、platex + dvipdfmx の組み合わせ。


作りかけのソースを開いてPDFを隣に表示させた場面:

イメージ 3


なお、こうやって作られるPDFで使われる日本語フォントは、texlive のデフォルトである IPA フォントになる。

ふだん使用しているエディタの kile では、こんなふうにヒラギノを指定してPDFに埋め込んでいるが、

イメージ 4


どうも Atom ではこういう芸当はできないようなので、
TeX のソースのプリアンブル部に、以下のように一行追加した。

\documentclass[12pt]{jsarticle}

\usepackage{okumacro}
\usepackage[deluxe]{otf}

% 追加
\AtBeginDvi{\special{pdf:mapfile hiraginoEmbed.map}} 

\begin{document}


これでヒラギノフォントを埋め込んだPDFが生成される。


そんなわけで、それほど苦労せずに環境構築ができたけれど、
まあ、TeX だけだったら kile と似たようなもので、
 
イメージ 5


わざわざ改宗することもないと思うが。。。(笑



千葉県巨木ボロノイ圖

用意するもの:
  1. 千葉県の県境シェイプファイル(ShapeFileライブラリ - RjpWiki)
  2. 千葉県の巨木シェイプファイル(参照


〈R スクリプト〉

library(tidyverse)
library(maptools)
library(ggplot2)
library(ggvoronoi)


chiba_outline <- rgdal::readOGR("chibak.shp")

Sys.setlocale("LC_ALL", "C")
tree <- rgdal::readOGR("big6_12p.shp")
long <- tree$coords.x1
lat <- tree$coords.x2
tree_coords <- data.frame(long, lat)


tree_coords %>%
   ggplot(aes(long, lat)) +
   geom_polygon(data = chiba_outline,
                               aes(long, lat, group = group), fill = "grey75") +
   geom_point(size = 0.5, colour = "darkblue") +
   coord_quickmap()

イメージ 1


ls <- duplicated(tree_coords)
tree_coords2 <- tree_coords[!ls, ]

tree_coords2 %>%
   ggplot(aes(long, lat)) +
   geom_voronoi(size = 0.1, colour = "white", fill = "grey40",
                              outline = chiba_outline) +
   coord_quickmap() + theme_void() +
   labs(title = "Voronoi Diagram with Big Tree as a seed")
 

イメージ 2



巨木データのシェイプファイルには漢字が含まれており、
しかも Shift-JIS なので(orz!)
読み込む前にロケールを設定する必要があるかも。

また、ボロノイ図をプロットする場合、
複数の点の緯度・経度が同じだとマズイので、
重複データは削除しておく必要がある。

参考にした記事 では、巨木ではなく鉄道の駅を使い、
それぞれの駅と県庁との距離によって色のグラデーションをつけている。

イメージ 3

ツイッターのほうで「おおっ 美しい」と褒めてさしあげたら、
速攻で著者のお嬢さんから「イイネ!」が飛んできた。ww

巨木の場合は木の高さとか種類とかで塗り絵をしてもいいかもしれないが、
あんまり美しくなりそうもないので、今回はスルーした。

千葉県の巨木データ

環境省自然環境局・生物多様性センター
トップ>自然環境調査Web-GIS>Shapeデータダウンロード

ここから「巨樹・巨木林調査・第6回」のページへ移り、データを入手。
でもって千葉県内の巨木の位置をプロット。


イメージ 1


さらに、先日目にした下記記事を参考に、


イメージ 2


たしか、トンボの翅の模様もボロノイ構造、とかいう話を聞いた記憶がある。
ま、面白そうなテーマなので、詳細は追って書くかもしれない。ww

カラオケ動画のキーを変える




カラオケ・バージョン♪



気分良く歌い始めたのだが、
時はめぐり また夏が来て
のところで高音が出ない。歳のせいか?w


1音ぐらいキーを下げないとダメだが、
そういえば、昔、動画の音声を細工する記事を書いたのを想い出した。
これだ。

しかし、やたらと面倒くさい手順で、やる気にならない。これは明らかに歳のせい。w


というわけで、もう少し簡単な方法を模索した。

Linux のコマンドラインで、音声の音程を変えるソフトがある。
Gentoo Linux だと、media-sound/sox。
ので、これをインストールした。


以下は、全体の作業手順。


①カラオケ動画をダウンロードする


動画ファイル名を video と指定すると、
ダウンロードされたファイルには mkv という拡張子が付けられる。
(動画によっては拡張子が mp4 になる場合もある。
動画によって違う理由は知らない)



②音声ファイルを生成する。

$ ffmpeg -i video.mkv sound.mp3



③sox でキーを変える。
pitch のあとに数字を引数として渡す。 
100で半音上がる。-100で半音下がる。
以下は1音下げた音声ファイルを生成する場合。

$ sox sound.mp3 sound_down.mp3 pitch -200



④元の動画の音声トラックに、キーを変更した音声を上書きする。
ついでに出力ファイルのフォーマットを標準的な mp4 にする。

$ ffmpeg -i video.mkv -i sound_down.mp3 -c:v copy -c:a aac -map 0:v:0 -map 1:a:0 aobajokoiuta.mp4


ここまでの所要時間は10分程度。

あとは、適当なプレイヤー・ソフトで再生すればよい。
ま、参考のためYouTubeにアップロードしたものを示す。


  

積み上げ折れ線グラフ

悪天候が続くと、毎日が祝日の人は暇つぶしが大変。w
まあ、たまにはRを動かしてみよう、ということで、

イメージ 1


これを検証してみよう。

子宮頸がんの年間死亡者数データは下記ウェブサイトで入手できる。
国立がんセンターがん情報サービス
がんに関する統計データのダウンロード/1.死亡データ
人口動態統計によるがん死亡データ(1958年~2016年)
cancer_mortality(1958-2016).xls (2,766KB)


データはGist にアップしておいた。

library(ggplot2)
library(reshape2)


data <- read.csv("hiv.csv")
data2 <- data[ , -2]
data3 <- data2[ , -20]

colnames(data3) <- c("year", "0-4", "5-9", "10-14", "15-19",
                                       "20-24", "25-29", "30-34", "35-39", "40-44",
                                       "45-49", "50-54", "55-59", "60-64", "65-69",
                                       "70-74", "75-79", "80-84", "85-")

data3 <- data3[c(1,19:2)]

df <- melt(data3, id.var = "year")


cols = colorRampPalette(c("#0068b7", "white", "#f39800"))

p <- ggplot(df, aes(x = year, y = value))
p <- p + geom_area(aes(group = variable, fill = variable))
p <- p + scale_fill_manual(values = cols(18))
print(p)


なお、CSVファイルの読み込みでヘッダー文字列がおかしくなる。
なにかオプションを指定すればいいのかもだが、
調べるのが面倒くさいのでスクリプト内で再設定している。w


イメージ 2


というわけで、池田議員の「死亡者がほとんど高齢者」ってのは、
ちょっと違うんじゃないかと思われる。
まあ約半分ですかね。
ちなみに、中高年ということなら、これはもう「ほとんど」と言ってよい。


ギャラリー
  • 百舌鳥
  • キジ
  • キジ
  • 平成最後の満月
  • ウグイス初撮り
  • ウグイス初撮り
  • ウグイス初撮り
  • 小望月
  • オツネントンボ
記事検索
  • ライブドアブログ