Design Vault 用途・構成・配色・本文で検索 /
索引 カテゴリ タグ English
索引に戻る

空港から中央駅 — 青線が最も安定

地図
空港から中央駅 — 青線が最も安定
120 90

1920 × 1080 作品として見る

持ち帰る

コピーして貼るか、ファイルに保存して渡す。ネットにつながらない環境には「全部入り」を 1 つ渡せば足りる。

全部入り

metro-schematic-commuter-reliability-everything.md

このパネルの中身を、URL の先にあるファイルの中身まで含めて 1 つにまとめた Markdown

依頼文

1.2 KB
以下の仕様でスライドを 1 枚作ってください。

- 版面 1920 × 1080
- 余白 上 90 右 120 下 40 左 120

## 文字(版面 1920px に対する px)
title  46px / 700 / 字間 0.01em
dek  22px / 400
stamp  20px / 500
station  22px / 500
destination  24px / 700
transfer  20px / 400
routeName  22px / 700
routeMetric  20px / 500
finding  24px / 700
recommendation  24px / 500
legend  20px / 500
note  20px / 400

## 配色
地 #F7F8F5 / 面 #FFFFFF / 文字 #18232D / 補助 #586875 / 強調 #C64E32 / 罫 #D7DEE1 / #236B9A / #167968 / #A66019

## 外すと崩れる点
- 線の接続と乗換駅で経路を比較し、駅間隔は地理距離として読まない
- 所要時間と定時率は同じ平日朝の対象期間・集計方法で比較する
- 色は路線名を区別するだけで、混雑度や優先度を表さない
- 架空の模式図と想定値。実在の時刻表・運行実績に基づく経路案内ではない

内容は[ここに自分の内容を書く]に置き換えてください。寸法と配色はそのまま守ってください。
正確に再現する場合は、この HTML をそのまま使ってください: https://design-vault.pages.dev/designs/metro-schematic-commuter-reliability/pattern.html

仕様

1.6 KB

/ai/designs/metro-schematic-commuter-reliability.json

format: slide-16x9
density: medium
layout:
  kind: map
  canvas:
    w: 1920
    h: 1080
  margin:
    top: 90
    right: 120
    bottom: 40
    left: 120
type:
  title:
    size: 46
    weight: 700
    tracking: 0.01em
  dek:
    size: 22
    weight: 400
  stamp:
    size: 20
    weight: 500
  station:
    size: 22
    weight: 500
  destination:
    size: 24
    weight: 700
  transfer:
    size: 20
    weight: 400
  routeName:
    size: 22
    weight: 700
  routeMetric:
    size: 20
    weight: 500
  finding:
    size: 24
    weight: 700
  recommendation:
    size: 24
    weight: 500
  legend:
    size: 20
    weight: 500
  note:
    size: 20
    weight: 400
colors:
  ground: "#F7F8F5"
  surface: "#FFFFFF"
  ink: "#18232D"
  muted: "#586875"
  accent: "#C64E32"
  rule: "#D7DEE1"
  series:
    - "#236B9A"
    - "#167968"
    - "#A66019"
rules:
  - 線の接続と乗換駅で経路を比較し、駅間隔は地理距離として読まない
  - 所要時間と定時率は同じ平日朝の対象期間・集計方法で比較する
  - 色は路線名を区別するだけで、混雑度や優先度を表さない
  - 架空の模式図と想定値。実在の時刻表・運行実績に基づく経路案内ではない

ファイル

pattern.html

7.7 KB

/designs/metro-schematic-commuter-reliability/pattern.html — 版そのものの HTML。書体の部分集合ごと同梱で、開けばこの絵がそのまま出ます。

中身を見る
<!doctype html>
<meta charset="utf-8">
<title>空港から中央駅 — 3 路線の所要時間と定時率</title>
<meta name="dv-font" content="Zen Kaku Gothic New:400;500;700">
<link rel="stylesheet" href="./font.css">
<style>
  :root {
    --ground: #F7F8F5;
    --surface: #FFFFFF;
    --ink: #18232D;
    --muted: #586875;
    --accent: #C64E32;
    --rule: #D7DEE1;
    --series-1: #236B9A;
    --series-2: #167968;
    --series-3: #A66019;
  }
  * { box-sizing: border-box; margin: 0; }
  html, body { width: 1920px; height: 1080px; }
  body { font-family: "Zen Kaku Gothic New", "IPAGothic", sans-serif; }
</style>
<svg xmlns="http://www.w3.org/2000/svg" width="1920" height="1080" viewBox="0 0 1920 1080" role="img" aria-labelledby="map-title map-desc" data-artboard="true">
  <title id="map-title">空港から中央駅への3路線</title>
  <desc id="map-desc">青線は31分で定時率96パーセント。緑線は乗換1回で28分、橙線は34分。線の交点は乗換駅。</desc>
  <style>
    text { font-family: "Zen Kaku Gothic New", "IPAGothic", sans-serif; }
    .ground { fill: var(--ground); }
    .ink { fill: var(--ink); }
    .muted { fill: var(--muted); }
    .rule { stroke: var(--rule); }
    .title { font-size: 46px; font-weight: 700; letter-spacing: .01em; }
    .dek { font-size: 22px; font-weight: 400; }
    .stamp { font-size: 20px; font-weight: 500; }
    .route { fill: none; stroke-width: 13; stroke-linecap: round; stroke-linejoin: round; }
    .station { fill: var(--surface); stroke: var(--ink); stroke-width: 4; }
    .interchange { fill: var(--surface); stroke-width: 8; }
    .station-label { font-size: 22px; font-weight: 500; fill: var(--ink); }
    .destination { font-size: 24px; font-weight: 700; fill: var(--ink); }
    .minor-label { font-size: 20px; font-weight: 400; fill: var(--muted); }
    .route-tag { fill: var(--surface); stroke: var(--rule); stroke-width: 2; }
    .tag-name { font-size: 22px; font-weight: 700; fill: var(--ink); }
    .tag-time { font-size: 20px; font-weight: 500; fill: var(--muted); }
    .finding { font-size: 24px; font-weight: 700; fill: var(--series-1); }
    .recommendation { font-size: 24px; font-weight: 500; fill: var(--ink); }
    .legend { font-size: 20px; font-weight: 500; fill: var(--muted); }
  </style>
  <rect class="ground" width="1920" height="1080"/>
  <g data-content="true">
      <rect x="120" y="90" width="1680" height="950" fill="transparent" aria-hidden="true"/>
      <text class="ink title" data-type="title" x="120" y="137">空港から中央駅 — 青線が最も安定</text>
      <text class="muted dek" data-type="dek" x="120" y="181">所要時間だけでなく、平日朝の定時率も見て経路を選ぶ</text>
      <text class="muted stamp" data-type="stamp" x="1790" y="130" text-anchor="end">平日 7–9 時 · 空港 → 中央駅</text>
      <line class="rule" x1="120" y1="218" x2="1800" y2="218" stroke-width="2"/>

      <g transform="translate(120 235)">
        <g opacity=".72">
          <path class="route" stroke="var(--series-1)" d="M140 535 H390 L570 355 H920 L1110 535 H1500"/>
          <path class="route" stroke="var(--series-2)" d="M140 535 H390 L570 355 H760 L940 175 H1280 L1500 355"/>
          <path class="route" stroke="var(--series-3)" d="M140 535 H390 L570 355 H760 L940 535 H1280 L1500 355"/>
        </g>
        <g>
          <circle class="station" cx="140" cy="535" r="17"/><circle class="station" cx="390" cy="535" r="13"/>
          <circle class="station" cx="570" cy="355" r="19" stroke="var(--series-1)"/><circle class="station" cx="920" cy="355" r="13"/>
          <circle class="station" cx="1110" cy="535" r="13"/><circle class="station" cx="1500" cy="535" r="19" stroke="var(--series-1)"/>
        </g>
        <circle class="interchange" cx="570" cy="355" r="28" stroke="var(--series-2)"/>
        <circle class="interchange" cx="760" cy="355" r="28" stroke="var(--series-3)"/>
        <circle class="station" cx="940" cy="175" r="15"/><circle class="station" cx="1280" cy="175" r="15"/>
        <circle class="station" cx="940" cy="535" r="15"/><circle class="station" cx="1280" cy="535" r="15"/>

        <g class="station-label">
          <text x="140" y="602" text-anchor="middle" data-type="station">空港</text>
          <text x="390" y="585" text-anchor="middle" data-type="station">西埠頭</text>
          <text x="570" y="300" text-anchor="middle" data-type="station">港中央</text>
          <text x="760" y="420" text-anchor="middle" data-type="station">市庁前</text>
          <text x="920" y="318" text-anchor="middle" data-type="station">美術館</text>
          <text x="1110" y="585" text-anchor="middle" data-type="station">公園東</text>
          <text x="1500" y="602" text-anchor="middle" class="destination" data-type="destination">中央駅</text>
          <text x="940" y="130" text-anchor="middle" data-type="station">旧市街</text>
          <text x="1280" y="130" text-anchor="middle" data-type="station">北門</text>
          <text x="940" y="590" text-anchor="middle" data-type="station">物流区</text>
          <text x="1280" y="590" text-anchor="middle" data-type="station">大学前</text>
        </g>
        <g class="minor-label">
          <text x="570" y="398" text-anchor="middle" data-type="transfer">乗換</text>
          <text x="760" y="398" text-anchor="middle" data-type="transfer">乗換</text>
          <text x="818" y="218" text-anchor="middle">旧市街経由</text>
          <text x="1090" y="490" text-anchor="middle">物流区経由</text>
        </g>

        <g transform="translate(220 66)">
          <rect class="route-tag" width="345" height="92" rx="12"/>
          <rect width="9" height="92" rx="4" fill="var(--series-1)"/>
          <text class="tag-name" x="28" y="37" data-type="routeName">青線 · 直通</text>
          <text class="tag-time" x="28" y="70" data-type="routeMetric">31分 / 定時率 96%</text>
        </g>
        <g transform="translate(668 66)">
          <rect class="route-tag" width="345" height="92" rx="12"/>
          <rect width="9" height="92" rx="4" fill="var(--series-2)"/>
          <text class="tag-name" x="28" y="37" data-type="routeName">緑線 · 港中央で乗換</text>
          <text class="tag-time" x="28" y="70" data-type="routeMetric">28分 / 定時率 89%</text>
        </g>
        <g transform="translate(1116 66)">
          <rect class="route-tag" width="345" height="92" rx="12"/>
          <rect width="9" height="92" rx="4" fill="var(--series-3)"/>
          <text class="tag-name" x="28" y="37" data-type="routeName">橙線 · 市庁前で乗換</text>
          <text class="tag-time" x="28" y="70" data-type="routeMetric">34分 / 定時率 94%</text>
        </g>
      </g>

      <line class="rule" x1="120" y1="927" x2="1800" y2="927" stroke-width="2"/>
      <text class="finding" data-type="finding" x="120" y="980">推奨</text>
      <text class="recommendation" data-type="recommendation" x="225" y="980">青線 — 緑線より3分遅いが、定時率は7ポイント高い</text>
      <g class="legend" data-type="legend">
        <line x1="1210" y1="973" x2="1240" y2="973" stroke="var(--series-1)" stroke-width="9" stroke-linecap="round"/>
        <text x="1254" y="980">青線</text>
        <line x1="1360" y1="973" x2="1390" y2="973" stroke="var(--series-2)" stroke-width="9" stroke-linecap="round"/>
        <text x="1404" y="980">緑線</text>
        <line x1="1510" y1="973" x2="1540" y2="973" stroke="var(--series-3)" stroke-width="9" stroke-linecap="round"/>
        <text x="1554" y="980">橙線</text>
      </g>
      <text class="muted" data-type="note" x="120" y="1030" font-size="20">模式図・架空データ。駅間隔は地理距離ではなく路線の接続を示す。定時率は同一期間の運行実績に基づく想定値。</text>
  </g>
</svg>

font.css

3.7 KB

/designs/metro-schematic-commuter-reliability/font.css — 全部入りには入れていない

中身を見る
/* dv-subset v2 — generated by scripts/subset-font.mjs. Do not edit.
 * font    Zen Kaku Gothic New 400;500;700
 * chars   128 (90c32b7c563627ad)
 *
 * pattern.html の文字だけを含む部分集合。描画時に外部へ取りに行かないよう同梱する。
 * 版の文字を変えたら取り直すこと — 忘れると足りない字が豆腐になる。
 * その取り忘れは pattern-entries.test.ts が上の指紋で検出する。
 */

@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(./font-0.woff2) format('woff2');
  unicode-range: U+25, U+2f, U+31-34, U+36-39, U+b7, U+2013-2014, U+2192, U+3001-3002, U+3044, U+304b-304c, U+304f-3052, U+3059-305a, U+305f-3060, U+3064-306b, U+306e-3071, U+3075-307a, U+3082, U+3088-308a, U+3092, U+3099-309a, U+30a4, U+30bb-30bc, U+30bf-30c0, U+30c6-30c9, U+30cf-30d1, U+30db-30dd, U+30f3, U+30fb-30fc, U+4e00, U+4e2d, U+4e57, U+4ea4, U+5024, U+516c, U+5206, U+524d, U+5317, U+533a, U+540c, U+56de, U+56f3, U+5712, U+5730, U+57e0, U+57fa, U+5927, U+592e, U+5968, U+5b66, U+5b89, U+5b9a, U+5b9f, U+5e02, U+5e73, U+5e81, U+5f0f, U+60f3, U+6240, U+63a5, U+63a8, U+63db, U+65e5, U+65e7, U+6642, U+6700, U+671d, U+671f, U+6771, U+67b6, U+6a21, U+6a59, U+6d41, U+6e2f, U+70b9, U+7269, U+7387, U+7406, U+7531, U+76f4, U+793a, U+7a7a, U+7d4c, U+7d9a, U+7dd1, U+7dda, U+7e3e, U+7f8e, U+884c, U+8853, U+8857, U+897f, U+8981, U+898b, U+8ddd, U+8def, U+901a, U+9045, U+904b, U+9078, U+9580, U+9593, U+9694, U+96e2, U+9752, U+982d, U+9928, U+99c5, U+9ad8;
}
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src: url(./font-1.woff2) format('woff2');
  unicode-range: U+25, U+2f, U+31-34, U+36-39, U+b7, U+2013-2014, U+2192, U+3001-3002, U+3044, U+304b-304c, U+304f-3052, U+3059-305a, U+305f-3060, U+3064-306b, U+306e-3071, U+3075-307a, U+3082, U+3088-308a, U+3092, U+3099-309a, U+30a4, U+30bb-30bc, U+30bf-30c0, U+30c6-30c9, U+30cf-30d1, U+30db-30dd, U+30f3, U+30fb-30fc, U+4e00, U+4e2d, U+4e57, U+4ea4, U+5024, U+516c, U+5206, U+524d, U+5317, U+533a, U+540c, U+56de, U+56f3, U+5712, U+5730, U+57e0, U+57fa, U+5927, U+592e, U+5968, U+5b66, U+5b89, U+5b9a, U+5b9f, U+5e02, U+5e73, U+5e81, U+5f0f, U+60f3, U+6240, U+63a5, U+63a8, U+63db, U+65e5, U+65e7, U+6642, U+6700, U+671d, U+671f, U+6771, U+67b6, U+6a21, U+6a59, U+6d41, U+6e2f, U+70b9, U+7269, U+7387, U+7406, U+7531, U+76f4, U+793a, U+7a7a, U+7d4c, U+7d9a, U+7dd1, U+7dda, U+7e3e, U+7f8e, U+884c, U+8853, U+8857, U+897f, U+8981, U+898b, U+8ddd, U+8def, U+901a, U+9045, U+904b, U+9078, U+9580, U+9593, U+9694, U+96e2, U+9752, U+982d, U+9928, U+99c5, U+9ad8;
}
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 700;
  font-display: block;
  src: url(./font-2.woff2) format('woff2');
  unicode-range: U+25, U+2f, U+31-34, U+36-39, U+b7, U+2013-2014, U+2192, U+3001-3002, U+3044, U+304b-304c, U+304f-3052, U+3059-305a, U+305f-3060, U+3064-306b, U+306e-3071, U+3075-307a, U+3082, U+3088-308a, U+3092, U+3099-309a, U+30a4, U+30bb-30bc, U+30bf-30c0, U+30c6-30c9, U+30cf-30d1, U+30db-30dd, U+30f3, U+30fb-30fc, U+4e00, U+4e2d, U+4e57, U+4ea4, U+5024, U+516c, U+5206, U+524d, U+5317, U+533a, U+540c, U+56de, U+56f3, U+5712, U+5730, U+57e0, U+57fa, U+5927, U+592e, U+5968, U+5b66, U+5b89, U+5b9a, U+5b9f, U+5e02, U+5e73, U+5e81, U+5f0f, U+60f3, U+6240, U+63a5, U+63a8, U+63db, U+65e5, U+65e7, U+6642, U+6700, U+671d, U+671f, U+6771, U+67b6, U+6a21, U+6a59, U+6d41, U+6e2f, U+70b9, U+7269, U+7387, U+7406, U+7531, U+76f4, U+793a, U+7a7a, U+7d4c, U+7d9a, U+7dd1, U+7dda, U+7e3e, U+7f8e, U+884c, U+8853, U+8857, U+897f, U+8981, U+898b, U+8ddd, U+8def, U+901a, U+9045, U+904b, U+9078, U+9580, U+9593, U+9694, U+96e2, U+9752, U+982d, U+9928, U+99c5, U+9ad8;
}

ノート

視覚的な問い

空港から中央駅へ向かうとき、数分の速さと遅延の少なさのどちらを優先すべきか。

構造

3路線を同じ起点と終点の間に引き、駅の接続と乗換位置を保った模式図にした。青線は31分、定時率96%で直通する。緑線は28分で最短だが港中央で乗換があり定時率89%、橙線は34分で定時率94%。緑線と比べて青線は3分遅い一方、定時率が7ポイント高いため、定時性を優先する判断を示す。

路線の色は接続を追うための識別に限る。線の折れ方と駅間隔は読みやすさのために配置しており、実際の地理や走行距離を表さない。時刻と定時率は同一条件で比べる架空の想定値である。

適用