AI编程辅助工具:5个提升代码可用性的Prompt模板
2026/11/5 12:25:43
width和height属性object-fit: cover保持图片比例并裁剪溢出部分| 布局方式 | 优点 | 适用场景 |
|---|---|---|
| Flexbox | 自动对齐、弹性伸缩 | 单行或多列等分布局 |
| Grid | 二维布局控制精确 | 复杂多图网格系统 |
| Float | 兼容旧浏览器 | 传统图文混排 |
.image-grid { display: grid; grid-template-columns: repeat(3, 1fr); /* 三列等宽 */ gap: 10px; /* 图片间距 */ } .image-grid img { width: 100%; height: 150px; object-fit: cover; /* 裁剪图片以填充容器 */ border-radius: 8px; }该样式将容器划分为三个等宽列,并通过gap控制间距,结合object-fit确保每张图片视觉一致。mfrow:接受一个长度为2的数值向量,如c(2, 2)表示2行2列布局;mar:控制每幅图的边界空白,格式为c(bottom, left, top, right),单位为行。# 设置2x2均匀布局,调整边距 par(mfrow = c(2, 2), mar = c(4, 4, 2, 1)) plot(1:10, main = "图1") plot(10:1, main = "图2") hist(rnorm(100), main = "图3") boxplot(1:10 ~ rep(1:2, each=5), main = "图4")上述代码中,`mar = c(4, 4, 2, 1)` 减少了右侧和上侧空白,优化空间利用,配合 `mfrow` 实现紧凑且对齐良好的多图布局。margin对象定义:const margin = { top: 20, right: 30, bottom: 40, left: 50 }; const width = 600 - margin.left - margin.right; const height = 400 - margin.top - margin.bottom };上述代码预留了不同大小的边距空间,width和height计算时已剔除边距,确保绘图区域准确适配。oma-horizontal:控制左右外边距对称调整mai-top:自适应上内边距,避免内容重叠oma-vertical="auto":启用垂直方向自动间距分配.container { oma-horizontal: 16px; mai-top: 12px; oma-vertical: auto; }上述样式定义中,`oma-horizontal` 确保容器在父级中水平居中并保留16px边距;`mai-top` 动态计算标题与内容间的安全距离;`oma-vertical: auto` 使上下外边距根据视口自动伸缩,提升跨设备兼容性。| 配置组合 | 适用场景 |
|---|---|
| oma + mai 同启 | 卡片式布局 |
| 仅启用 oma | 全宽横幅设计 |
import matplotlib.pyplot as plt # 示例数据 x_data = [1, 3, 5, 7] y_data = [2, 6, 4, 8] plt.figure(figsize=(8, 6)) plt.scatter(x_data, y_data) plt.axhline(y=4, color='k', linestyle='--') plt.axvline(x=4, color='k', linestyle='--') plt.xlabel('X指标') plt.ylabel('Y指标') plt.grid(True) plt.show()该代码使用 `axhline` 和 `axvline` 在均值处划分象限,虚线分隔确保视觉清晰。`figsize` 控制图像比例,避免变形。var mu sync.Mutex var count int func increment() { mu.Lock() defer mu.Unlock() count++ }该代码通过sync.Mutex确保递增操作的原子性,避免竞态条件。<meta name="viewport" content="width=device-width, initial-scale=1.0">该代码设置设备独立像素宽度,并将初始缩放比例设为1.0,确保页面以真实分辨率渲染。其中: -width=device-width:使布局视口宽度等于设备屏幕宽度; -initial-scale=1.0:禁止初始缩放,保持CSS像素与设备像素1:1对应。library(grid) grid.newpage() pushViewport(viewport(layout = grid.layout(nrow = 2, ncol = 2)))上述代码创建一个 2×2 的网格布局容器,为后续图形定位奠定基础。print(barplot(1:5), vp = viewport(layout.pos.row = 1, layout.pos.col = 1:2)) print(boxplot(1:10), vp = viewport(layout.pos.row = 2, layout.pos.col = 1))此方式可跨单元格合并显示,提升空间利用率。.container { display: grid; grid-template-columns: 70% 30%; gap: 16px; }左侧放置主图表,右侧用于显示关键指标说明与事件标注,确保视觉流从左到右自然延续。transform: translateY()对齐 Y 轴层级📈 [图表区] ┃ 📝 [注释区]
在复杂仪表盘与报告可视化中,布局的灵活性至关重要。patchwork提供了一种声明式的图形组合语法,使多个ggplot图表能够通过简单的加减运算实现排版。
使用+可将图块横向拼接,/实现纵向堆叠:
library(ggplot2) library(patchwork) p1 <- ggplot(mtcars, aes(x = mpg)) + geom_histogram() p2 <- ggplot(mtcars, aes(x = wt)) + geom_boxplot() layout <- p1 + p2 # 并排显示上述代码将两个独立图表水平排列,+操作符等效于创建一行多列布局。
结合括号分组可构建更精细结构:
(p1 + p2) / ggplot(mtcars, aes(x = hp)) + geom_density()该表达式先并排p1和p2,再在其下方插入密度图,形成上下分区布局,极大提升了多图协同表达能力。
library(patchwork) p1 + p2 + p3 + plot_layout(nrow = 2, ncol = 2, guides = "collect")上述代码将三个图形按 2×2 网格排列,并集中显示共用图例。其中 `guides = "collect"` 会合并各子图的图例,避免重复展示,提升可视化整洁度。这种机制适用于多面板图表的标准化排版需求。| 参数 | 推荐值 | 作用 |
|---|---|---|
| plot_spacing | 0 | 消除子图间隙 |
| plot_margin | 0 | 去除外边距 |
plt.subplots_adjust(wspace=0, hspace=0, left=0, right=1, top=1, bottom=0)此代码关闭水平与垂直间距,并将边距压缩至极限,确保多个Axes对象能无缝对接,适用于需要高密度信息展示的科学可视化场景。| 类型 | 适用场景 | 推荐工具 |
|---|---|---|
| 2×2 网格 | 四组对照实验 | LaTeX + subfigure |
| 1×3 并列 | 时间序列可视化 | Matplotlib + GridSpec |
import matplotlib.pyplot as plt from matplotlib.gridspec import GridSpec fig = plt.figure(figsize=(10, 6)) gs = GridSpec(2, 3, figure=fig, hspace=0.3, wspace=0.25) ax1 = fig.add_subplot(gs[0, :2]) # 第一行前两列 ax2 = fig.add_subplot(gs[0, 2]) # 第一行第三列 ax3 = fig.add_subplot(gs[1, :]) # 第二行整行该代码通过GridSpec定义非均匀网格,hspace与wspace控制间距,实现出版级对齐精度。apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: api-service-hpa spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: api-service minReplicas: 3 maxReplicas: 10 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 70| 指标名称 | 告警阈值 | 采集频率 |
|---|---|---|
| P99 Latency | >800ms | 10s |
| Error Rate | >1% | 1m |
| Queue Depth | >100 | 30s |