Skip to content

Vertical Cluster List

๊น€๊ธฐํ•œ edited this page Sep 14, 2022 · 4 revisions

Description

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-09-14 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 30 42

์œ„ ์ด๋ฏธ์ง€์—์„œ ๋นจ๊ฐ„ ์‚ฌ๊ฐํ˜• ์˜์—ญ ์•ˆ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.

์™ผ์ชฝ Graph์™€ ์˜ค๋ฅธ์ชฝ Summary๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

Graph๋‚˜ Summary๋ฅผ ํด๋ฆญํ•˜๋ฉด ์•„๋ž˜์— Detail ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ณด์ด๊ณ  Statistics ์ปดํฌ๋„ŒํŠธ ์—ญ์‹œ ์—ฌ๊ธฐ์„œ ์„ ํƒ๋œ cluster์˜ ๋ฐ์ดํ„ฐ ํ†ต๊ณ„๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Graph์™€ Summary์˜ ์ž์„ธํ•œ ์„ค๋ช…์€ ์•„๋ž˜์—์„œ ๊ณ„์†๋ฉ๋‹ˆ๋‹ค.

Collapsable Graph

@vgihan ๋‹˜

ezgif com-gif-maker(3)
  • ๊ฐ Cluster Size์˜ ์‹œ๊ฐํ™”๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • Cluster๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ Commit์„ ํฌํ•จํ•˜๊ณ , ํฌํ•จ๋œ Commit์˜ ๊ฐœ์ˆ˜๋กœ Cluster Size๊ฐ€ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.
  • ํ•˜๋‚˜์˜ Cluster๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” box๋Š” ๋‚ด๋ถ€์— ์ฑ„์›Œ์ง„ cell์˜ ํฌ๊ธฐ๋กœ์จ Cluster Size๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • max ๊ฐ’์€ 10์œผ๋กœ์จ, Cluster Size๊ฐ€ 10 ์ด์ƒ์ด๋ฉด box๋ฅผ ๋ชจ๋‘ ์ฑ„์›๋‹ˆ๋‹ค.
  • ์—ฐ์†๋œ Cluster๊ฐ€ ์—ฐ๊ฒฐ๋œ ๋Š๋‚Œ์„ ์ฃผ๊ธฐ ์œ„ํ•ด link line์„ ์ถ”๊ฐ€ํ–ˆ๊ณ , ๋งˆ์ง€๋ง‰ element๋Š” link๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ํด๋ฆญํ•˜์—ฌ Detail ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํŽผ์ณ์ง€๋ฉด link๊ฐ€ ๋Š˜์–ด๋‚˜๋ฉฐ Detail์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Using Type

import type { BaseType, Selection } from "d3";

import type { ClusterNode } from "types";

export type ClusterGraphElement = {
  cluster: ClusterNode;
  clusterSize: number;
  selected: number;
};

export type SVGElementSelection<T extends BaseType> = Selection<
  T | BaseType,
  ClusterGraphElement,
  SVGSVGElement | null,
  unknown
>;

Profile & Summary

@jejecrunch ๋‹˜

ezgif com-gif-maker (4)

commit author์˜ ์ด๋ฆ„๊ณผ ํด๋Ÿฌ์Šคํ„ฐ ๋งจ ๋งˆ์ง€๋ง‰์˜ commit message๊ฐ€ ๋ณด์—ฌ์ง‘๋‹ˆ๋‹ค.

cluster ์•ˆ์— commit์ด 1๊ฐœ๋ฉด + n more์„ ์ถœ๋ ฅํ•˜์ง€ ์•Š์œผ๋ฉฐ, 2๊ฐœ ์ด์ƒ์˜ ๊ฒฝ์šฐ๋Š” + n more์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์ด๋•Œ commit author์˜ ๊ฒฝ์šฐ cluster๋ณ„๋กœ ๊ฐ€๊ณตํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ค‘๋ณต๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋˜ commit author์˜ background-color๋Š” ํ˜„์žฌ 15๊ฐ€์ง€์ด๋ฉฐ ์ด์— ๋Œ€ํ•œ ๋ฐฉ์•ˆ์€ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€๋กœ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Using Type

export type Keyword = {
  keyword: string;
  count: number;
};

export type Content = {
  message: string;
  count: number;
};

export type Summary = {
  authorNames: Array<Array<string>>;
  content: Content;
};

export type Cluster = {
  clusterId: number;
  summary: Summary;
};
Clone this wiki locally