UpSetプロットの作成方法:集合の交わり(交差)を可視化する
2026/08/31

UpSetプロットの作成方法:集合の交わり(交差)を可視化する

CSVやExcelデータからUpSetプロットを作成。集合への帰属情報のエンコード、交差バーとドットマトリクスの読み方、重複部分のハイライト、SciVisでの図の編集方法を解説します。

五つの円からなるベン図(Venn diagram)は、情報を提供するどころか、かえって混乱を招くことが少なくありません。領域が狭すぎてラベルを配置できず、読者がその面積を正確に比較することも困難になり、見落とされた交差部分(インターセクション)に気づかない原因にもなります。UpSetプロットは、これら重なり合う複雑な図形を、明確な交差マトリクスと整列された棒グラフへと置き換える手法です。

研究課題が、複数の遺伝子リスト、コホート、特徴量セット、生物種、パスウェイ、あるいは実験条件間の重複に関するものである場合は、SciDrawのUpSet Plot Generatorをご活用ください。このジェネレーターは、構造化された帰属テーブル(メンバーシップ・テーブル)を読み込み、その結果をSciVisに転送してデザインの調整を行うことができます。

集合サイズバー、交差マトリクス、交差サイズバーを備えた基本的なUpSetプロット

UpSetプロット作成時によくある間違い

  • 交差を二重にカウントする: 各棒グラフが「排他的な交差(exclusive intersections)」を表すのか、それとも「包括的な重複(inclusive overlaps)」を表すのかを明確に定義してください。
  • 識別子(ID)の不一致: Gene-1、gene1、Gene_1 など表記が揺れていると、それぞれ異なるアイテムとして処理されてしまいます。
  • 集合内の重複データの放置: 帰属情報は通常バイナリ(二値)で表されます。重複したレコードによって交差のカウント数が不当に膨らまないようにしてください。
  • 説明なしのソート(並び替え): 交差バーは、サイズ順、次数(degree)順、あるいは定義された生物学的な優先順位に従って並び替えることができますが、その基準を明記する必要があります。
  • 微小な交差の過剰な表示: フィルタリングを行う場合は明確なルールに基づいて行い、データ全体の詳細は別途残しておくようにしてください。

UpSetプロットに必要なデータ形式

SciDrawのサンプルでは、以下のような横型のバイナリ帰属テーブルを使用します。

列名用途例
item一意のエンティティ(ID)Gene_001
ControlControl集合への帰属1 または 0
Treatment_ATreatment A集合への帰属1 または 0
Treatment_BTreatment B集合への帰属1 または 0
Treatment_CTreatment C集合への帰属1 または 0
ValidationValidation集合への帰属1 または 0
highlight任意の注釈(ハイライト用)yes または no

集合ごとに1列を用意します。基本サンプルでは5つの集合を使用しています。

基本的なUpSet CSV または 遺伝子セットのサンプル をダウンロードしてご確認ください。各行は一意のアイテムを表し、各集合の列には一貫した真偽値(0/1)を入力する必要があります。

ステップ 1:プロット作成前に集合を定義する

各集合にアイテムが分類される基準を明確に書き出します。例えば、発現変動遺伝子(DEG)リストの場合、調整済みp値やフォールドチェンジの基準をすべての実験条件で一貫して適用する必要があります。コホート研究であれば、文書化された選択基準に従います。プロット作成機能によって、一貫性のない集合定義を後から修正することはできません。

ステップ 2:帰属テーブルをアップロードする

UpSet Plot Generatorを開き、用意されているサンプルから選択するか、ご自身のCSV、TSV、TXT、XLSX、またはXLSファイルをアップロードします。プレビュー画面で、アイテム識別子の重複、帰属セルの欠損、あるいは本来数値であるべき列がテキストとして誤って解析されていないかを確認してください。

ステップ 3:マトリクスとバーの検証

マトリクスの各列は、一つの交差(組み合わせ)を表しています。塗りつぶされたドットはその交差に含まれる集合を示し、交差する集合が複数ある場合はドット間が垂直線で結ばれます。その列の上部にある棒グラフが、その交差のサイズを示します。また、左側にある水平方向の棒グラフは、各集合の全体サイズを示しています。

重複する発現変動遺伝子セットのUpSetプロット

元のテーブルからいくつかの重要な交差を手動で計算し、プロットのバーの高さと一致しているか確認してください。これは、フィルタリングを行った後や、一つのアイテムが複数のソースファイルに存在する可能性がある場合に特に重要です。

ステップ 4:合理的な表示順序の選択

交差サイズ順にソートすると、読者はどの重複が支配的であるかを容易に把握できます。次数(degree)順にソートすると、単一集合、二者間交差、それ以上の高次交差ごとにグループ化されます。特定の比較が研究の中心である場合にはカスタム順序の採用も正当化されますが、単に結果を目立たせるためだけに順序を操作することは避けるべきです。

SciVisを使用すれば、ラベル、間隔、配色を調整できます。生物学的に重要な交差を一つだけハイライトし、それ以外のマトリクス部分をニュートラルな色調に保つといった編集が可能です。

一つの交差がハイライトされたUpSetプロット

UpSetプロットの読み方

まず上部の交差サイズバー(縦の棒グラフ)に注目し、そこから真下のドット列へと視線を移します。どの集合の行に塗りつぶされたドットがあるかを確認してください。例えば、排他的な交差を表示しているプロットにおいて、Treatment AとTreatment Bの行に塗りつぶしドットがあり、Controlの行にはない列は、まさにその組み合わせのみに存在するアイテムの数を示しています。

集合サイズバー(左の横棒)と交差サイズバー(上の縦棒)は、それぞれ異なる問いに答えるものです。全体のサイズが大きい集合であっても、そのメンバーの大部分が他の集合と共有されている場合、その集合に特異的な(ユニークな)アイテム数は非常に少なくなることがあります。

UpSetプロットとベン図の使い分け

  • 直感的な空間的イメージが有効な二つまたは三つの集合を比較する場合は、Venn Diagram Makerを使用します。
  • 四つ以上の集合を扱う場合、あるいは交差のサイズを厳密に比較・評価したい場合は、UpSetプロットを使用します。
  • 静的な帰属関係ではなく、データの移動や流れ(フロー)を表現したい場合は、Sankey Diagram Generatorを使用します。

よくある質問(FAQ)

Rを使わずにUpSetプロットを作成できますか?

はい、可能です。バイナリ帰属テーブルをUpSet Plot Generatorにアップロードして図を生成し、そのままSciVis上で編集を続けることができます。

帰属を示す列に TRUE や FALSE を使用できますか?

一貫したブーリアン(論理値)であれば動作することもありますが、CSVやスプレッドシートソフト間での互換性と曖昧さを排除するため、提供しているサンプルでは1と0を使用しています。

交差の「次数(degree)」とは何ですか?

次数とは、その交差に関与している集合の数を指します。塗りつぶされたドットが単一(一つ)の場合は次数一であり、連結された三つの塗りつぶしドットは次数三となります。

存在するすべての交差を表示すべきですか?

必ずしもその必要はありません。大規模な集合群では、空の交差や極めて小さな交差が多数発生します。不都合な結果を手作業で取り除くのではなく、最小サイズや上位の交差数に関する明確な基準を適用し、そのルールを論文等で開示するようにしてください。

図を作成する

まずはUpSet Plot Generatorにデータを読み込ませ、帰属テーブルの実際のカウント数と照合した上で、関連するチャートの選択肢について科学データ可視化ガイドを参考にしてください。

AIで研究図をつくろう

数千人の研究者が SciDraw AI を使い、論文・研究費申請・ジャーナル投稿向けの図を数分で作成しています。デザインの経験は不要です。