SSK's Memo


Venn Diagram

About This Contents

任意の集合のベン図の自動生成および抽出フィルタの実装について検討中

何か便利なライブラリやツールが欲しい

具体例

集合A,B,C,D,Eのベン図(Branko Grünbaum考案の楕円によるベン図)

  • 集合A={a, ab, ae, ac, ad, abc, ade, abe, abd, acd, ace, abcd, acde, abde, abce, abcde}
  • 集合B={b, ab, bc, bd, be, abc, bcd, abe, abd, bce, bde, abcd, bcde, abde, abce, abcde}
  • 集合C={c, bc, cd, ac, ce, abc, bcd, cde, bce, acd, ace, abcd, bcde, acde, abce, abcde}
  • 集合D={d, cd, de, bd, ad, bcd, cde, ade, abd, acd, bde, abcd, bcde, acde, abde, abcde}
  • 集合E={e, de, ae, ce, be, cde, ade, abe, bce, bde, ace, bcde, acde, abde, abce, abcde}

今回作りたい抽出フィルターf(x)の論理演算

  • f(A)     ⇒ (A) ∩ (B ∪ C ∪ D ∪ E)
  • f(A,B)    ⇒ (A ∪ B) ∩ (C ∪ D ∪ E)
  • f(A,C,D)   ⇒ (A ∪ C ∪ D) ∩ (B ∪ E)
  • f(A,B,D,E)  ⇒ (A ∪ B ∪ D ∪ E) ∩ (C)
  • f(A,B,C,D,E) ⇒ (A ∪ B ∪ C ∪ D ∪ E)

実装イメージ

今回はイメージを伝えるためにPNGファイルを切り替えるだけの手抜き実装。
任意のデータを渡すと最適な図を自動生成して、指定した論理式のフィルタを組み込めるようにしたい。
D3.jsやchart.jsをベースに作れそうな気もするのだが、該当するライブラリを知っていたら誰か教えて。

チェックボックスで抽出フィルタf(x)の引数を指定

A B C D E