Takuya71 のぶろぐ

外資系ソフトウェア会社で働いてます、認定スクラムマスター

gnuplot で 日本語のラベルを指定すると 豆腐になるのですが

gnuplot で 日本語が表示できない。

erminal type set to 'aqua'
gnuplot> set font 'ヒラギノ丸ゴ ProN W4,16'
gnuplot> plot sin(x)
gnuplot> set title 'ああああ'
gnuplot> plot sin(x)

実際は ruby から実行しているのですが、 gnuplot から上のように直接事項しても豆腐に。

gnuplot 側の問題か aquaterm の問題なのかどっちだろう。

情報求む。

できた。

ググったら みつけた

https://blog.milkywaygalaxy.info/blog/2011-1026-2130-gnuplot-japanese-language-label-rotate-vertically/

~/.gnuplot に以下のような記述しておけばよいらしい。

% cat ~/.gnuplot
set term aqua title 'Gnuplot' font 'HiraMinPro-W3, 16' size 640 480 enhanced

やってみたところできた!! f:id:takuya71:20151217235013p:plain

その後 もっと調べてみました。

.gnuplot でなくても 肝なところは

term aqua の部分でした。

.gnuplot で指定しなくとも ruby のプログラム中でも

Gnuplot.open do |gp|
  Gnuplot::Plot.new(gp) do |plot|
    plot.title '出現頻度が高い10語'
    plot.ylabel '出現頻度'
    plot.xlabel '出現単語'
    plot.set 'term aqua font "ヒラギノ丸ゴ ProN W4, 16"'

    x = ht.sort_by {|k,v| -v}[0..9].map{|k,v| k}
    y = ht.sort_by {|k,v| -v}[0..9].map{|k,v| v}

        plot.data << Gnuplot::DataSet.new( [x, y] ) do |ds|
            ds.with = "boxes"
            #ds.notitle
      ds.using = "2:xtic(1)"
        end
  end
end

のように .set 'term aqua font <フォント名> と指定すると 期待通りに日本語が表示されるようになります。

下の画像は 上のプログラムのように ヒラギノ丸ゴ ProN W4 を指定した場合です。 f:id:takuya71:20151218224516p:plain

permutation と combination

Ruby の permutaion は リストから 組み合わせを簡単に列挙してくれます。

例えば [1,2,3,4] から 任意の3つの数字を抽出する組み合わせは以下のように簡単に記述できます。

[1,2,3,4].permutation(3).to_a.each do |l| p l end
[1, 2, 3]
[1, 2, 4]
[1, 3, 2]
[1, 3, 4]
[1, 4, 2]
[1, 4, 3]
[2, 1, 3]
[2, 1, 4]
[2, 3, 1]
[2, 3, 4]
[2, 4, 1]
[2, 4, 3]
[3, 1, 2]
[3, 1, 4]
[3, 2, 1]
[3, 2, 4]
[3, 4, 1]
[3, 4, 2]
[4, 1, 2]
[4, 1, 3]
[4, 2, 1]
[4, 2, 3]
[4, 3, 1]
[4, 3, 2]

Scala だと permutations がありますが、Rubyのように これ一発では出来ないので combination と併せてつかう。

scala> List(1,2,3,4).combinations(3).flatMap(_.permutations).toList.foreach(println(_))
List(1, 2, 3)
List(1, 3, 2)
List(2, 1, 3)
List(2, 3, 1)
List(3, 1, 2)
List(3, 2, 1)
List(1, 2, 4)
List(1, 4, 2)
List(2, 1, 4)
List(2, 4, 1)
List(4, 1, 2)
List(4, 2, 1)
List(1, 3, 4)
List(1, 4, 3)
List(3, 1, 4)
List(3, 4, 1)
List(4, 1, 3)
List(4, 3, 1)
List(2, 3, 4)
List(2, 4, 3)
List(3, 2, 4)
List(3, 4, 2)
List(4, 2, 3)
List(4, 3, 2)

Permutation は順列 Combination は組み合わせ になります。 高校の時に確率統計で習った気がします。

例えば 1 から 4 までの数字の組み合わせは と言う問題だとすると

Ruby だと

p [1,2,3,4].permutation(4).to_a.count

と記述することで 24 通りあることがわかります。

1から4までの数字から二つ取り出す組み合わせは

p [1,2,3,4].combination(2).to_a.count

と すると6 通りということがわかります。

iphone6 液晶壊れる

私のiphone6 ではありませんが、子供使っている iphone6 の液晶が壊れてしまいました。

どうやら ロッカーから出す時に落としてしまったようです。

一応 AppleCare+ 入っているのですが、不注意だと 7800円かかるようです。

修理出そうと予約の状況をみると ほぼ埋まっていて、今週の平日は無理っぽい。。

事前に バックアップとって、iphoneの探すを解除してと 書いてますが、 液晶壊れてて ロック解除出来ないのですが。。 どうしたらいいんでしょう?

とりあえず 週末に予約入れてみよう。

12月13日追記

今日 八王子のビックカメラに持って行って修理してもらいました。 ビックカメラはアップルの正規サービスプロバイダなので アップルストアと 同レベルのサービスです。

予約した時間より少し早く到着したのですが 空いていたので直ぐ対応していただけました。

液晶が壊れているとのことで本体交換の対応になりました。

iPhone を探す機能のオフは この時わかったのですが icloudから行えばよかったのでした。 リモートワイプも出来るし。

修理代は 7800円でした。 ビックカメラのポイントを修理代の一部に使えたので約5000円程で修理できました。

Mac OSX 10.11 El Capitan にアップグレードしたあと 空き容量激減

OSX 10.11 El Capitan に まずは Serverとして使っている Mac mini 2009 のほうからアップグレードすることにしました。

Take time

作業自体は 問題なく 30分程度?で 10.11 となりました。

Issue

しかし しばらくすると 空き容量が少ないという 警告が出てきます。 このMac mini 120GBのSSDに換装しているのですが、アップグレードするまでは かなり 余裕の空き容量だったはず。

どこが そんなに 容量を食っているのかとしらべてみたところ ライブラリ -> Server -> Serverdocs という 今まで意識もしたようなことの無いフォルダの容量が 60GBほど使っています!

調べてもみても ファイル共有で使うフォルダのようですが、イマイチはっきりしませんし どうして10.11にしてから急にこんなにつかっっているかわかりませんでした。 同じような 現象は いくつかあるようなのですが、 ファイル共有のiOSからのアクセスがどうのこうの のような投稿もありましたがはっきりとした結末は出ていないようでした。

Workaround

とりあえず このままじゃ困るので。。。 ServerDocs の中身を 他の容量のあるディスクに一応コピーしてから 削除しました。 その後 とくに不具合は出ていません。

そのうち どういう用途のフォルダで どういう時に中身が作成されるのか調べてみたいと思います。

El Capitan 自体は 遅いというレビューも いくつか見ててちょっと心配してましたが、私の使用では 遅くなったという感じはしません。 もう少し使い込んでみたいと思います。

ESET の OSX10.11 対応版が出ていた

ウイルス対策ソフトに ESETを使っているのですが、ずっと OSX 10.11 に対応してませんでした。

USのサイト見ると 11月の頭には OSX 10.11の対応版が出ていたのですが、日本の代理店のサイトでは 11月中旬予定ということでしばらく出ていませんでしたが、今日 確認したとこ 11月18日 に OSX 10.11対応版が出ていました。

eset-support.canon-its.jp

私の使っている ソフトの中で唯一 OSX 10.11に対応していないソフトだったのでこれで ようやくOSX 10.11 にバージョンアップできます。

※ ESET Cyber Security Pro V6.1 / ESET Cyber Security V6.1 は、OS X v10.11 El Capitan 専用プログラムとなります。他のOSではご利用いただけませんのでご注意ください。

ってことですが、手順見ると ESET のバージョン上げてから OSをアップグレードしろって書いてある。

今週末にでも 10.11にしてみましょうかね。

ESET パーソナル セキュリティ ダウンロード3年版  (最新版) [オンラインコード]

ESET パーソナル セキュリティ ダウンロード3年版 (最新版) [オンラインコード]

GitHub Pages に hugo を使って 調べもの記録用blog 作成

ちょっとした調べものを記録する為のblogを hugo と GitHub Pages を使って

構成してみました。

gohugo.io

hugo を使ってみたのは go言語で出来ていて面白そうという理由だけですが、

動作も早くて結果としては気に入っています。

 

mac なので hugo のインストール自体は homebrew を使ってインストールしました。

brew install hugo

 

GitHub Pages に hugo を使って ホスティングする方法も

hugo のサイトに説明があります。

gohugo.io

ここにある手順で レポジトリ作って、

gh-pages ブランチを作って公開します。

 

hugo new post/<filename.md> で記事を作った後は

上のページにある deploy.sh を実行するとGitHub に pull して、

gh-pages にも pull を行ってくれます。

 

http://takuya71.github.io/blog/

 

takuya71.github.io

 

実は theme を入れた後で GitHub への push がうまくいかなくて

少しはまりました。 blog 自体も git の管理下で そこに 別の リポジトリから

theme をfetch して持ってくるとgh-pages に git subtree add するとエラーとなり

追加出来ませんでした。 根本的な解決方法がよくわからないので、

.gitignore に theme を追加して git の管理下から外しました。

 他のマシンからの更新も考えて theme のディレクトリの下の各 テーマ毎に存在している .git のフォルダを削除しました。 どうせ テーマの更新のアプデートは行うつもりがないので。 とりあえず すべての内容を Githubにアップ。

 

記事が増えると リストの画面の下に ページ切り替えのボタンが

表示さえるようになるのですが、ここをクリックすると 404エラーに

baseurl からの指定では無いため URLの指定がおかしくなっています。

config.toml に canonifyurls = true の指定をし絶対パスで指定するように変更すると、

期待通りに ページ切り替えができるようになりました。

 

 

 

OSX 10.10 スリープから復帰後 ブラウザでのWEBサイトの表示が遅い

現象

スリープから 復帰した後の ブラウザからのWEBサイトの表示が非常に遅くなる現象 ここ数日 毎日発生しており、かなりいらいらしてました。

この状態になると 殆どのサイトが タイムアウトとなり 表示することができない状態になります。

切り分けの為に試したこと

  • Macを再起動すると通常のスピードに戻る。
  • ルーター再起動 しても 効果なし。
  • ほかのPC、OSX、iPhone からのアクセスは問題ない。
  • 他の正常な機器とのの違いは このMACには ESET をインストールしている

怪しいもの

ESETが 怪しい気がするので、 ESET のアプリケーション側から 監視を無効化してみるが改善されない。

職業柄 こういうアプリは UIで止めても カーネルのドライバが動いていることが多いとおもうので アクティビティモニタで プロセスを見る、 eset_proxy といういかにもな名前のプロセスがいる。

このプロセスの受信、送信の量がそもそも少なくておかしい気がする。 eset_proxy が止まってしまっているのかも。。

このプロセスを強制終了してみると 急に元のスピードに戻る。やっぱ ESETが怪しい。

サポートに問い合わせ ← いまここ

2015/11/01 追記

その後の状況ですが、問い合わせ後 現象のほうが再現されなくなりました。
特にシステム側では 変更は行っておりませんが、現象は発生しなくなりました。 サポートからは 今後 現象再現時に収集する情報を指示してもらっております。 とりあえず 一旦終了。