원클릭으로
ggai-r-fonts
R graphics font and multilingual text guidance for ggplot output across devices and platforms.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
R graphics font and multilingual text guidance for ggplot output across devices and platforms.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Generate a single biomedical entity as a reusable cutout asset (transparent alpha background, no labels) suitable for compositing into diagrams. Use when the goal is to produce one isolated subject — a cell, vessel, tissue cutaway, signaling cloud — that will later be placed into a scene, rather than rendering a complete figure.
Produce a schematic, illustration, biomedical cartoon, or pure conceptual figure without underlying data. Calls an image model directly with a structured prompt, generates one or more candidates, scores them on basic visual proxies, and saves the best. Use when the goal is "draw / illustrate / diagram / sketch" and no data frame is in scope.
Decide which R visualization engine to use for a figure: ggplot2, grid/grob, base graphics, ComplexHeatmap, circlize, ggraph/DiagrammeR, htmlwidget (plotly/leaflet), or composite (patchwork/cowplot/aplot). Load this skill when the user names a non-ggplot library, when the figure shape suggests a specialized library, or when ggplot would require contortions to reach the intended result.
Produce interactive web visualizations using `plotly`, `leaflet`, `DT`, `networkD3`, or any other `htmlwidgets`-based library. Default output is a self-contained HTML file (always works). Static PNG export is supported when the optional `webshot2` package and a headless Chrome (via `chromote`) are available.
Compose multiple plots into a single figure using `patchwork`, `cowplot`, or `aplot`. Use whenever the user wants more than one panel — labeled multi-panel figures, side-by-side comparisons, A/B/C panels with shared legend, plots stacked over a metadata strip, or any layout that exceeds what a single ggplot's `facet_*` can express.
Lift the visual quality of an existing data figure by redrawing it with an image model that uses the original ggplot as a hard constraint. Preserves data semantics (positions, groups, scales, labels) while improving typography, composition, and surface polish. Use when the user has a working figure but wants it to look like a publication, cover, or polished talk slide.
| name | ggai-r-fonts |
| description | R graphics font and multilingual text guidance for ggplot output across devices and platforms. |
| when_to_use | Use when a ggai plot contains non-ASCII labels, CJK text, emoji, font-family requests, PDF/SVG/PNG export concerns, or reports of square-box glyphs. |
Make R and ggplot text render legibly across platforms, languages, and output devices without assuming that a requested font is installed.
sans, serif, and mono are
portable defaults. Named font families depend on the graphics device and the
user's operating system.theme(text = element_text(family = ...)).pdf() is fragile for non-standard and multilingual fonts because it
does not embed fonts by itself.ragg::agg_png() plus systemfonts are usually more
reliable for CJK text than legacy screen devices.svglite plus systemfonts is usually a good SVG path.showtext can make CJK and custom font rendering more portable by drawing
text through its own rendering path when the package is available.Use these only as suggestions. Do not assume they are installed.
PingFang SC, Heiti SC, Songti SC, Hiragino Sans GB.Microsoft YaHei, SimHei, SimSun, Microsoft JhengHei.Noto Sans CJK SC, Noto Sans CJK JP, Noto Sans CJK KR,
WenQuanYi Micro Hei.Noto Sans CJK.ggplot2::theme(text = ggplot2::element_text(family = "PingFang SC")).ragg::agg_png() when
available. Do not call it in generated plot code unless the user asked for an
export file.svglite::svglite()
when available.pdf() is enough. Prefer showtext or a device
that embeds or outlines text when available.For interactive ggplot objects:
p +
ggplot2::theme_minimal(base_family = "PingFang SC") +
ggplot2::theme(
text = ggplot2::element_text(family = "PingFang SC")
)
For uncertain cross-platform CJK output:
font_family <- "Noto Sans CJK SC"
p +
ggplot2::theme_minimal(base_family = font_family) +
ggplot2::theme(text = ggplot2::element_text(family = font_family))
For user-facing guidance, explain that the user may need to replace
font_family with an installed font on their machine.
Declare a blocker or limitation when:
pdf() documentation: base PDF devices do not embed fonts by
default and only use known family mappings.quartz() documentation: missing glyphs can be shown as empty
oblongs on macOS.windowsFonts() and X11 font documentation: family mapping is
platform-specific.sans, serif, and mono are guaranteed.