visualization-choice-reporting

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Visualization Choice & Reporting

可视化选择与报告

Overview

概述

Visualization choice & reporting matches visualization types to questions and data, then creates narrated dashboards that highlight signal and recommend actions.
Three core components:
1. Chart selection: Match chart type to question type and data structure (comparison → bar chart, trend → line chart, distribution → histogram, relationship → scatter, composition → treemap, geographic → map, hierarchy → tree diagram, flow → sankey)
2. Visualization best practices: Apply perceptual principles (position > length > angle > area > color for accuracy), reduce chart junk, use pre-attentive attributes (color, size, position) to highlight signal, respect accessibility (colorblind-safe palettes, alt text), choose appropriate scales (linear, log, normalized)
3. Narrative reporting: Lead with insight headline, annotate key patterns, provide context (vs benchmark, vs target, vs previous period), interpret what it means, recommend next actions
When to use: Data analysis, dashboards, reports, presentations, monitoring, exploration, stakeholder communication
可视化选择与报告会根据问题和数据匹配合适的可视化类型,然后创建突出关键信息并推荐行动方案的带叙事性仪表盘。
三大核心组件:
1. 图表选择: 根据问题类型和数据结构匹配图表类型(对比→条形图,趋势→折线图,分布→直方图,关联→散点图,构成→树形图,地理数据→地图,层级关系→树状图,流向→桑基图)
2. 可视化最佳实践: 应用感知原则(位置>长度>角度>面积>颜色,以保证准确性),减少图表冗余,使用预注意属性(颜色、大小、位置)突出关键信息,兼顾可访问性(适用于色弱人群的调色板、替代文本),选择合适的刻度(线性、对数、归一化)
3. 叙事性报告: 以洞察标题开头,标注关键模式,提供上下文(与基准对比、与目标对比、与往期对比),解读数据含义,推荐后续行动
适用场景: 数据分析、仪表盘制作、报告生成、演示汇报、指标监控、数据探索、利益相关者沟通

Workflow

工作流程

Copy this checklist and track your progress:
Visualization Choice & Reporting Progress:
- [ ] Step 1: Clarify question and profile data
- [ ] Step 2: Select visualization type
- [ ] Step 3: Design effective chart
- [ ] Step 4: Narrate insights and actions
- [ ] Step 5: Validate and deliver
Step 1: Clarify question and profile data
Define the question you're answering (What's the trend? How do X and Y compare? What's the distribution? What drives Z? What's the composition?). Profile your data: type (categorical, numerical, temporal, geospatial), granularity (daily, user-level, aggregated), size (10 rows, 10K, 10M), dimensions (1D, 2D, multivariate). See Question-Data Profiling.
Step 2: Select visualization type
Match question type to chart family using Chart Selection Guide. Consider data size (small → tables, medium → standard charts, large → heatmaps/binned), number of series (1-3 → standard, 4-10 → small multiples, 10+ → interactive/aggregated), and audience expertise (executives → simple with insights, analysts → detailed exploration).
Step 3: Design effective chart
For simple cases → Apply Design Checklist (clear title, labeled axes, legend if needed, annotations, accessible colors). For complex cases (multivariate, dashboards, interactive) → Study resources/methodology.md for advanced techniques (small multiples, layered charts, dashboard layout, interaction patterns).
Step 4: Narrate insights and actions
Lead with insight headline ("Revenue up 30% YoY driven by Enterprise segment"), annotate key patterns (arrows, labels, shading), provide context (vs benchmark, target, previous), interpret meaning ("Suggests product-market fit in Enterprise"), recommend actions ("Double down on Enterprise sales hiring"). See Narrative Framework.
Step 5: Validate and deliver
Self-assess using resources/evaluators/rubric_visualization_choice_reporting.json. Check: Does chart answer the question clearly? Are insights obvious at a glance? Are next actions clear? Create
visualization-choice-reporting.md
with question, data summary, visualization spec, narrative, and actions. See Delivery Format.

复制以下清单并跟踪进度:
可视化选择与报告进度跟踪:
- [ ] 步骤1:明确问题并梳理数据概况
- [ ] 步骤2:选择可视化类型
- [ ] 步骤3:设计有效的图表
- [ ] 步骤4:撰写洞察与行动建议的叙事内容
- [ ] 步骤5:验证并交付成果
步骤1:明确问题并梳理数据概况
定义你要解答的问题(X的趋势如何?X和Y的对比情况?数据分布是怎样的?什么因素驱动Z?数据构成是什么?)。梳理数据概况:类型(分类数据、数值数据、时间数据、地理空间数据)、粒度(每日、用户级、聚合级)、规模(10行、1万行、100万行)、维度(一维、二维、多变量)。详见问题-数据概况梳理
步骤2:选择可视化类型
根据图表选择指南,将问题类型与图表家族匹配。考虑数据规模(小数据→表格,中等数据→标准图表,大数据→热力图/分箱图表)、系列数量(1-3个→标准图表,4-10个→小多图,10个以上→交互式/聚合图表),以及受众专业水平(高管→简洁带洞察的图表,分析师→可深度探索的详细图表)。
步骤3:设计有效的图表
简单场景→遵循设计检查清单(清晰标题、带单位的轴标签、必要时添加图例、标注关键信息、可访问性配色)。复杂场景(多变量、仪表盘、交互式)→学习resources/methodology.md中的进阶技巧(小多图、分层图表、仪表盘布局、交互模式)。
步骤4:撰写洞察与行动建议的叙事内容
以洞察标题开头(例如“企业客户收入同比增长30%,成为增长核心驱动力”),标注关键模式(箭头、标签、阴影),提供上下文(与基准对比、与目标对比、与往期对比),解读数据含义(例如“表明企业客户群体已实现产品-市场匹配”),推荐后续行动(例如“加大企业客户销售团队招聘力度”)。详见叙事框架
步骤5:验证并交付成果
使用resources/evaluators/rubric_visualization_choice_reporting.json进行自我评估。检查:图表是否清晰解答了问题?洞察是否一目了然?后续行动是否明确?创建
visualization-choice-reporting.md
文件,包含问题、数据摘要、可视化规格、叙事内容和行动建议。详见交付格式

Question-Data Profiling

问题-数据概况梳理

Question Types → Chart Families
Question TypeExamplePrimary Chart Families
TrendHow has X changed over time?Line, area, sparkline, horizon
ComparisonHow do categories compare?Bar (horizontal for names), column, dot plot, slope chart
DistributionWhat's the spread/frequency?Histogram, box plot, violin, density plot
RelationshipHow do X and Y relate?Scatter, bubble, connected scatter, hexbin
CompositionWhat are the parts?Treemap, pie/donut, stacked bar, waterfall, sankey
GeographicWhere is it happening?Choropleth, bubble map, flow map, dot map
HierarchicalWhat's the structure?Tree, dendrogram, sunburst, circle packing
MultivariateHow do many variables interact?Small multiples, parallel coordinates, heatmap, SPLOM
Data Type → Encoding Considerations
  • Categorical (product, region, status): Use position, color hue, shape. Bar length better than pie angle for accuracy.
  • Numerical (revenue, count, score): Use position, length, size. Prefer linear scales; use log only when spanning orders of magnitude.
  • Temporal (date, timestamp): Always use consistent intervals. Annotate events. Show seasonality if relevant.
  • Geospatial (lat/lon, region): Use maps for absolute location; use tables/charts if geography not central to insight.

问题类型 → 图表家族
问题类型示例主要图表类型
趋势分析X随时间的变化情况如何?折线图、面积图、迷你图、地平线图
对比分析不同类别之间的对比情况?横向条形图、柱状图、点图、斜率图
分布分析数据的分布/频率是怎样的?直方图、箱线图、小提琴图、密度图
关联分析X和Y之间的关系是什么?散点图、气泡图、连线散点图、六边形分箱图
构成分析整体由哪些部分组成?树形图、饼图/环形图、堆叠条形图、瀑布图、桑基图
地理分析事件发生在哪些区域?分级统计图、气泡地图、流向地图、点地图
层级分析数据的层级结构是什么?树状图、系统树图、旭日图、圆形打包图
多变量分析多个变量之间如何相互作用?小多图、平行坐标图、热力图、散点图矩阵(SPLOM)
数据类型 → 编码注意事项
  • 分类数据(产品、区域、状态):使用位置、颜色色调、形状。条形图长度比饼图角度的准确性更高。
  • 数值数据(收入、数量、分数):使用位置、长度、大小。优先使用线性刻度;仅当数据跨度多个数量级时使用对数刻度。
  • 时间数据(日期、时间戳):始终使用一致的时间间隔。标注关键事件。若相关,展示季节性规律。
  • 地理空间数据(经纬度、区域):若地理位置是洞察核心则使用地图;否则使用表格/图表。

Chart Selection Guide

图表选择指南

Question TypeChart TypesWhen to Use
ComparisonBar (horizontal), Column, Grouped bar, Dot plot, Slope chartCategorical → Numerical. Horizontal bar for long names/ranking. Grouped for 2-3 metrics. Slope for before/after.
TrendLine, Area, Sparkline, Step, CandlestickTime → Numerical. Line for continuous trends. Area for cumulative/part-to-whole. Sparkline for inline. Step for discrete changes.
DistributionHistogram, Box plot, Violin, Density plotNumerical → Frequency. Histogram for shape/outliers. Box for quartiles across groups. Violin for full density.
RelationshipScatter, Bubble, Hexbin, Connected scatterNumerical X → Numerical Y. Scatter for correlation. Bubble for 3rd/4th variable (size/color). Hexbin for dense data.
CompositionTreemap, Pie/Donut, Stacked bar (100%), Waterfall, SankeyParts of whole. Treemap for hierarchy. Pie for 2-5 categories (part-to-whole key). Waterfall for cumulative. Sankey for flow.
GeographicChoropleth, Bubble map, Flow mapSpatial patterns. Choropleth for regions. Bubble for precise locations. Flow for origin-destination.
MultivariateSmall multiples, Heatmap, Parallel coordinatesMany variables. Small multiples for consistent comparison. Heatmap for matrix (time×day). Parallel for dimensions.

问题类型图表类型适用场景
对比分析横向条形图、柱状图、分组条形图、点图、斜率图分类数据→数值数据。横向条形图适用于长名称/排名场景。分组条形图适用于2-3个指标的对比。斜率图适用于前后对比。
趋势分析折线图、面积图、迷你图、阶梯图、K线图时间数据→数值数据。折线图适用于连续趋势。面积图适用于累计/整体-部分关系。迷你图适用于嵌入式展示。阶梯图适用于离散变化。
分布分析直方图、箱线图、小提琴图、密度图数值数据→频率。直方图适用于展示数据形状/异常值。箱线图适用于跨组四分位数对比。小提琴图适用于展示完整密度分布。
关联分析散点图、气泡图、六边形分箱图、连线散点图数值X→数值Y。散点图适用于展示相关性。气泡图适用于加入第3/4个变量(大小/颜色)。六边形分箱图适用于高密度数据。
构成分析树形图、饼图/环形图、100%堆叠条形图、瀑布图、桑基图整体的组成部分。树形图适用于层级结构。饼图适用于2-5个类别(核心为整体-部分关系)。瀑布图适用于累计变化。桑基图适用于流向分析。
地理分析分级统计图、气泡地图、流向地图空间模式。分级统计图适用于区域数据。气泡地图适用于精确位置。流向地图适用于起点-终点分析。
多变量分析小多图、热力图、平行坐标图多变量场景。小多图适用于一致性对比。热力图适用于矩阵数据(如时间×日期)。平行坐标图适用于多维度对比。

Design Checklist

设计检查清单

Essential Elements
  • Insight headline title: Not "Revenue by Month" but "Revenue Up 30% YoY, Driven by Enterprise"
  • Clear axis labels with units: "Revenue ($M)", "Month (2024)", not just "Revenue", "Date"
  • Legend if multiple series: Position near chart, use direct labels on lines when possible
  • Annotations for key points: Arrows, labels, shading for important events/patterns
  • Source and timestamp: "Source: Analytics DB, as of 2024-11-14" builds trust
Perceptual Best Practices
  • Start Y-axis at zero for bar/column charts (to avoid exaggerating differences)
  • Use position over angle/area (bar > pie for accuracy, scatter > bubble when size isn't critical)
  • Colorblind-safe palette: Avoid red-green only; use blue-orange or add patterns
  • Limit colors to 5-7 distinct hues (more requires legend lookup, slows comprehension)
  • Use pre-attentive attributes (color, size, position) to highlight signal, not decoration
Declutter
  • Remove chart junk: No 3D, no gradients, no heavy gridlines, no background images
  • Mute non-data ink: Light gray gridlines, thin axes, subtle colors for reference lines
  • Use white space: Don't cram; let data breathe
Accessibility
  • Alt text describing insight: "Line chart showing revenue grew from $2M to $2.6M (30% increase) from Q1 to Q4 2024, with Enterprise segment contributing 80% of growth."
  • Sufficient contrast: Text readable, lines distinguishable
  • Patterns in addition to color for critical distinctions (dashed/solid lines, hatched fills)

核心要素
  • 洞察导向的标题: 不是“月度收入图表”,而是“收入同比增长30%,核心驱动力为企业客户”
  • 带单位的清晰轴标签: “收入(百万美元)”“月份(2024年)”,而非仅“收入”“日期”
  • 多系列时添加图例: 放置在图表附近,若可能直接在线条上标注标签
  • 关键节点标注: 使用箭头、标签、阴影标注重要事件/模式
  • 数据源与时间戳: “数据源:分析数据库,截至2024-11-14”以建立可信度
感知最佳实践
  • 条形/柱状图Y轴从0开始(避免夸大差异)
  • 优先使用位置而非角度/面积(条形图>饼图,准确性更高;当大小非关键时,散点图>气泡图)
  • 色弱友好的调色板: 避免仅使用红绿色;使用蓝橙色或添加图案
  • 限制不同色调数量为5-7种(过多会增加图例查找成本,降低理解速度)
  • 使用预注意属性(颜色、大小、位置)突出关键信息,而非装饰
简化图表
  • 去除图表冗余: 无3D效果、无渐变、无厚重网格线、无背景图片
  • 弱化非数据元素: 浅灰色网格线、细轴、参考线使用柔和颜色
  • 合理留白: 避免过度拥挤,让数据有呼吸空间
可访问性
  • 描述洞察的替代文本: “折线图显示2024年Q1到Q4收入从200万美元增长至260万美元(增长30%),其中企业客户贡献了80%的增长。”
  • 足够的对比度: 文本可读,线条可区分
  • 关键区分除颜色外添加图案(虚线/实线、阴影填充)

Narrative Framework

叙事框架

Structure: Headline → Pattern → Context → Meaning → Action
1. Headline (one sentence, insight-first):
  • Not: "This chart shows monthly revenue."
  • But: "Revenue grew 30% YoY, driven by Enterprise segment."
2. Pattern (what do you see?):
  • "Q1-Q2 flat at $2M/month, then steady climb to $2.6M in Q4."
  • "Enterprise segment grew 120% while SMB declined 10%."
3. Context (compared to what?):
  • "vs target: 15% above plan"
  • "vs last year: Q4 2023 was $2.0M, now $2.6M"
  • "vs industry: Our 30% growth vs 10% industry average"
4. Meaning (why does it matter?):
  • "Suggests product-market fit in Enterprise; SMB churn indicates pricing mismatch."
  • "If sustained, Q1 2025 could hit $3M/month."
5. Action (what should we do?):
  • "Prioritize: Hire 2 Enterprise AEs, launch SMB annual plans to reduce churn."
  • "Monitor: Enterprise win rate, SMB churn by plan type."
Example Full Narrative:
Headline: Enterprise revenue up 120% YoY while SMB declined 10%, resulting in overall 30% growth.
Pattern: Revenue grew from $2M/month (Q1) to $2.6M (Q4). Enterprise segment contributed $1.5M in Q4 (up from $680K in Q1), while SMB dropped from $1.3M to $1.1M.
Context: Total revenue 15% above plan. Enterprise growth (120%) far exceeds industry average (25%). SMB churn rate doubled from 5% to 10% in Q3-Q4.
Meaning: Strong product-market fit in Enterprise; SMB pricing or feature set may be misaligned. Enterprise is now 58% of revenue vs 34% in Q1, reducing diversification.
Actions:
  1. Prioritize: Hire 2 Enterprise AEs for Q1, double down on Enterprise playbook
  2. Fix: Launch SMB annual plans (Q1) to reduce churn; interview churned SMB customers to identify gaps
  3. Monitor: Enterprise win rate, SMB churn by plan type, revenue concentration risk

结构:标题→模式→上下文→含义→行动
1. 标题(一句话,以洞察为核心):
  • 错误示例:“此图表展示月度收入情况。”
  • 正确示例: “收入同比增长30%,核心驱动力为企业客户。”
2. 模式(你观察到什么?):
  • “Q1-Q2稳定在每月200万美元,之后持续增长至Q4的260万美元。”
  • “企业客户收入增长120%,而中小客户收入下降10%。”
3. 上下文(与什么对比?):
  • “与目标对比:超出计划15%”
  • “与去年对比:2023年Q4收入为200万美元,当前为260万美元”
  • “与行业对比:我们的30%增长vs行业平均10%”
4. 含义(为什么重要?):
  • “表明企业客户群体已实现产品-市场匹配;中小客户流失率上升暗示定价不匹配。”
  • “若此趋势持续,2025年Q1收入有望达到每月300万美元。”
5. 行动(我们该做什么?):
  • “优先事项:招聘2名企业客户客户经理,推出中小客户年度套餐以降低流失率。”
  • “监控指标:企业客户赢单率、按套餐类型划分的中小客户流失率。”
完整叙事示例:
标题: 企业客户收入同比增长120%,中小客户收入下降10%,整体收入增长30%。
模式: 收入从Q1的每月200万美元增长至Q4的260万美元。企业客户Q4收入贡献150万美元(Q1为68万美元),而中小客户收入从130万美元降至110万美元。
上下文: 总收入超出计划15%。企业客户增长120%远超行业平均25%。中小客户流失率在Q3-Q4从5%翻倍至10%。
含义: 企业客户群体产品-市场匹配度高;中小客户定价或功能可能存在错位。企业客户收入占比从Q1的34%升至Q4的58%,降低了收入多元化程度。
行动建议:
  1. 优先事项: Q1招聘2名企业客户客户经理,深化企业客户运营策略
  2. 优化: Q1推出中小客户年度套餐以降低流失率;访谈流失的中小客户以定位问题
  3. 监控: 企业客户赢单率、按套餐类型划分的中小客户流失率、收入集中度风险

Delivery Format

交付格式

Create
visualization-choice-reporting.md
with these sections:
1. Question: The question you're answering with data (e.g., "How has revenue trended over the past year?")
2. Data Summary: Source, time period, granularity, dimensions, size (e.g., "Analytics DB, Jan-Dec 2024, monthly, revenue by segment, 24 rows")
3. Visualization:
  • Chart type selected (e.g., "Multi-line chart with annotations")
  • Rationale (why this chart? question type, data structure, chart advantages)
  • Design decisions (Y-axis scale, labels, annotations, colors)
  • Chart specification (embed image, code, or detailed spec with axes, series, annotations)
4. Narrative: (Headline → Pattern → Context → Meaning → Action structure from above)
  • Headline: Insight-first one-liner
  • Pattern: What you see
  • Context: vs benchmark/target/history
  • Meaning: Why it matters
  • Actions: What to do next
5. Validation: Self-check with rubric (Clarity ✓, Accuracy ✓, Insight ✓, Actionability ✓, Accessibility ✓)
6. Appendix (optional): Raw data, alternatives considered, statistical tests, assumptions
See resources/template.md for full template with examples.

创建
visualization-choice-reporting.md
文件,包含以下部分:
1. 问题: 你用数据要解答的问题(例如“过去一年的收入趋势如何?”)
2. 数据摘要: 数据源、时间范围、粒度、维度、规模(例如“分析数据库,2024年1-12月,月度数据,按细分群体划分的收入,共24行数据”)
3. 可视化:
  • 选择的图表类型(例如“带标注的多折线图”)
  • 选择理由(为什么选此图表?问题类型、数据结构、图表优势)
  • 设计决策(Y轴刻度、标签、标注、配色)
  • 图表规格(嵌入图片、代码,或包含轴、系列、标注的详细说明)
4. 叙事内容: (遵循上述“标题→模式→上下文→含义→行动”结构)
  • 标题:洞察导向的一句话总结
  • 模式:观察到的现象
  • 上下文:与基准/目标/历史的对比
  • 含义:数据的业务意义
  • 行动:后续建议
5. 验证: 使用评估标准自我检查(清晰度 ✓、准确性 ✓、洞察性 ✓、可执行性 ✓、可访问性 ✓)
6. 附录(可选): 原始数据、备选方案、统计测试、假设条件
详见resources/template.md获取含示例的完整模板。

Common Mistakes

常见错误

Chart Selection Errors
Pie chart for >5 categories: Hard to compare angles accurately ✓ Use horizontal bar chart: Position on common scale is more accurate
Line chart for categorical data: Implies continuity that doesn't exist (e.g., revenue by product) ✓ Use bar chart: Discrete categories
3D charts: Perspective distorts values, adds no information ✓ Use 2D with color/size: Clearer, more accurate
Design Mistakes
Y-axis doesn't start at zero (bar chart): Exaggerates differences ✓ Start at zero for bar/column: Accurate visual proportion
Dual Y-axes with different scales: Misleading correlations ✓ Use small multiples or index to 100: Compare shapes, not scales
Rainbow color scheme: Not colorblind-safe, no perceptual ordering ✓ Sequential (light→dark) or diverging (blue→white→red) palette
Narrative Failures
Title: "Revenue by Month": Descriptive, not insightful ✓ "Revenue up 30% YoY, driven by Enterprise": Insight-first
No context: "Revenue is $2.6M" (vs what?) ✓ Add benchmark: "Revenue $2.6M, 15% above $2.25M target"
Pattern without meaning: "Revenue increased" (so what?) ✓ Interpret: "Revenue up 30%, suggests Enterprise product-market fit, informs 2025 hiring plan"
No actions: Ends with "interesting pattern" ✓ Recommend: "Hire 2 Enterprise AEs, investigate SMB churn"

图表选择错误
超过5个类别使用饼图: 角度对比难度大,准确性低 ✓ 使用横向条形图: 基于共同刻度的位置对比更准确
分类数据使用折线图: 暗示不存在的连续性(例如按产品划分的收入) ✓ 使用条形图: 适用于离散类别
3D图表: 透视效果会扭曲数值,无额外信息价值 ✓ 使用2D图表+颜色/大小: 更清晰、准确
设计错误
条形图Y轴不从0开始: 夸大差异 ✓ 条形/柱状图Y轴从0开始: 保证视觉比例准确
使用不同刻度的双Y轴: 易产生误导性关联 ✓ 使用小多图或归一化到100: 对比趋势形状而非刻度
彩虹色配色方案: 色弱不友好,无感知顺序 ✓ 使用连续色(浅→深)或发散色(蓝→白→红)调色板
叙事失误
标题:“月度收入图表”: 描述性,无洞察 ✓ “收入同比增长30%,核心驱动力为企业客户”: 洞察导向
无上下文: “收入为260万美元”(与什么对比?) ✓ 添加基准: “收入260万美元,超出225万美元的目标15%”
仅描述模式无解读: “收入增长了”(那又怎样?) ✓ 解读含义: “收入增长30%,表明企业客户已实现产品-市场匹配,为2025年招聘计划提供依据”
无行动建议: 仅停留在“有趣的模式” ✓ 提出建议: “招聘2名企业客户客户经理,调查中小客户流失原因”

Resources

资源

  • Simple cases: Use resources/template.md for question profiling → chart selection → narrative
  • Complex cases: Study resources/methodology.md for dashboards, small multiples, interactive visualizations, advanced chart types
  • Self-assessment: resources/evaluators/rubric_visualization_choice_reporting.json
Further reading:
  • "Storytelling with Data" by Cole Nussbaumer Knaflic (chart choice, decluttering, narrative)
  • "The Visual Display of Quantitative Information" by Edward Tufte (principles, chart junk, data-ink ratio)
  • "Show Me the Numbers" by Stephen Few (dashboard design, perceptual principles)
  • 简单场景: 使用resources/template.md完成问题梳理→图表选择→叙事内容
  • 复杂场景: 学习resources/methodology.md中的仪表盘、小多图、交互式可视化、进阶图表类型相关内容
  • 自我评估: resources/evaluators/rubric_visualization_choice_reporting.json
延伸阅读:
  • 《Storytelling with Data》(Cole Nussbaumer Knaflic):图表选择、简化图表、叙事方法
  • 《The Visual Display of Quantitative Information》(Edward Tufte):可视化原则、图表冗余、数据-墨水比
  • 《Show Me the Numbers》(Stephen Few):仪表盘设计、感知原则