Divooka 中的绘图

Divooka 中的绘图分为四个层次:
- 快速、高层、一步完成的绘图
- 稍微高级一些、基于配置的标准图表绘图
- 定制程度各不相同的专用绘图类型
- 除上述三种之外,还可以使用 Dhole 以文本形式编写图表和示意图
目前 Divooka 还没有提供让你绘制完全自定义图表的方式——如果有此需求,请考虑改用更底层的绘图 API 和图像合成 API。
在本文中,我们将逐一介绍下面的每种类型;更多详细信息,请参阅 API 文档或特定库的文档。
可用图表汇总
(编写中)
标准
| 图表 | 位置 | 用途 | 配置 |
|---|---|---|---|
| Scatter Plot | Quick Plot | 散点图或折线图。 | 待补充 |
Dhole 图表
下面每一项都是一段 Dhole 文本的第一个词;各类别的页面列出了它接受的所有词。
| 图表 | 第一个词 | 页面 |
|---|---|---|
| 流程图 | flowchart |
流程图 |
| 时序图 | sequence |
时序图 |
| 状态图 | state |
状态图 |
| 类图 | class |
类图 |
| 实体图 | entity |
实体图 |
| 思维导图和组织结构图 | mindmap |
思维导图 |
| 时间线 | timeline |
时间线 |
| 甘特图 | gantt |
甘特图 |
| 饼图、环形图、柱状图、折线图、散点图和雷达图 | pie, donut, bar, line, xy, radar |
图表 |
| 象限图 | quadrant |
象限图 |
| 桑基图 | sankey |
桑基图 |
| 表格和看板 | table, kanban |
表格和看板 |
1. 高层快速绘图
绘图功能通常位于 Plotting > Quick Plot 工具箱中,额外的配置位于 Plotting Configurations 类别中。

要绘制某种图表,请选择对应图表类型的节点,然后提供所需的参数。

2. 基于配置的标准图表
这种方法所能绘制的图表类型有限,并且在进行高级定制时可能会变得繁琐。
支持的系列/对象:
1. Annotation
在图表上创建一个注解文本可绘制对象(plottable)。

2. Arrow
创建一个具有指定起点和终点坐标的箭头可绘制对象。

3. Bars
根据位置和数值数据数组创建一个柱状图可绘制对象。

4. Benchmark
创建一个显示渲染性能指标的基准测试可绘制对象。

5. Boxes
根据统计数据数组创建一个箱形图可绘制对象。

6. Bracket
在两点之间创建一个括号可绘制对象,可选添加标签。

7. Callout
创建一个标注可绘制对象,包含文本和一个指向特定位置的箭头。

8. Candlestick
根据 OHLC(开盘-最高-最低-收盘)价格数据创建一个 K 线图可绘制对象。

9. Contour Lines
使用两个数组按指定的组合方法构成网格,创建一个等值线可绘制对象。

10. Coxcomb
根据数值列表创建一个南丁格尔玫瑰图(极坐标柱状图)可绘制对象,可选添加标签。

11. Crosshair
在指定坐标处创建一个十字准线可绘制对象,样式可自定义。

12. Data Logger
根据 x 和 y 值数组创建一个数据记录器可绘制对象,样式可自定义。

13. Ellipse
创建一个具有指定中心、半径和样式选项的椭圆可绘制对象。

14. Error Bar
创建一个具有指定 X、Y 值和误差范围的单个误差线可绘制对象。

15. Error Bars
创建一个包含多条误差线的可绘制对象,可选 X、Y 误差范围。

16. Fill Y
根据 x、上方 y 值和下方 y 值数组创建一个在 Y 值之间填充的可绘制对象。

17. Financial Time Axis
创建一个金融时间轴可绘制对象,用于以适当的间距显示连续的日期数据。

18. Function
在指定范围内创建一个数学函数可绘制对象。

19. Heatmap
根据二维数据值数组创建一个热力图可绘制对象。

20. Histogram Bars
根据数值数组创建一个直方图柱可绘制对象,并自动分箱。

21. Horizontal Line
在指定的 Y 坐标处创建一个水平线可绘制对象。

22. Horizontal Span
在两个 X 坐标之间创建一个水平区间可绘制对象。

23. Image Marker & Image Rect
创建图像可绘制对象,在特定坐标处或矩形区域内显示图像。

24. Iso Lines
创建一个等值线(斜向参考线)可绘制对象,位置和外观可自定义。

25. Line
在两个 Vector2D 点之间创建一个直线可绘制对象。

26. Lollipop
根据 x 和 y 值数组创建一个棒棒糖图可绘制对象。

27. Marker
在指定坐标处创建单个标记可绘制对象。

28. Markers
根据 x 和 y 坐标数组创建一个包含多个标记的可绘制对象。

29. OHLC
根据价格数据数组创建一个 OHLC(开盘-最高-最低-收盘)可绘制对象。

30. Phasor
创建一个相量可绘制对象,显示从原点指向极坐标中各点的箭头。

31. Pie
根据数值列表创建一个饼图可绘制对象,可选添加标签。

32. Polar Axis
创建一个极坐标轴可绘制对象,其辐条和圆环可自定义,用于极坐标绘图。

33. Polygon
根据 x 和 y 坐标数组创建一个多边形可绘制对象。

34. Population
创建一个总体分布图可绘制对象,显示数据点的分布,可选显示统计信息。

35. Radar
创建一个雷达图可绘制对象,在极坐标轴上显示多个系列的数值。

36. Radial Gauge
创建一个径向仪表图,用多个仪表表示标量值。

37. Rectangle
创建一个具有指定坐标和样式的矩形可绘制对象。

38. Scale Bar
创建一个比例尺可绘制对象,用于在图表上指示测量比例。

39. Scatter
根据 x 和 y 值数组创建一个散点图可绘制对象。

40. Signal
根据 x 和 y 值数组创建一个可快速渲染的时间序列信号可绘制对象。

41. Smith Chart Axis
创建一个史密斯圆图坐标轴可绘制对象,用于射频和微波工程应用。

42. Text
在指定坐标处创建一个文本标签可绘制对象。

43. TIN Plot
创建一个 TIN(不规则三角网)可绘制对象,用于表示三维曲面。

44. Tooltip
创建一个工具提示可绘制对象,显示文本以及一个指向特定位置的箭头。

45. Triangular Axis
为三元图创建一个三角坐标轴,包含数据点,样式可自定义。

46. Vector Field
创建一个向量场图,在指定点处按给定的向量分量显示箭头。

47. Vertical Line
在指定的 X 坐标处创建一个垂直线可绘制对象。

48. Vertical Span
在两个 Y 坐标之间创建一个垂直区间可绘制对象。

支持的配置元素:
- 图表标题 -
WithTitle(string title) - X 轴标签 -
WithXAxis(string xAxisLabel) - Y 轴标签 -
WithYAxis(string yAxisLabel) - 浮动坐标轴 - 支持自定义位置的坐标轴

3. 专用图表
这些图表通常也通过 QuickPlot 提供。
- 二维码(QR Code)
- 人口金字塔(Population Pyramid)
- 以及更多!
4. Dhole
Dhole 根据文本绘制图表和示意图:第一行指明要绘制什么,后面的各行说明它要展示的内容。它的节点位于 Plotting 工具箱的 Dhole 类别中——Draw Dhole、Describe Dhole 和 Write Dhole。Draw Dhole 输出的图表与本页其他图表一样,可以预览、应用主题,并通过 Save Chart 保存。
flowchart Making tea
Thirsty? [start] -> Boil the kettle -> Tea or coffee?
Tea or coffee? -> Steep the tea: tea
Tea or coffee? -> Brew the coffee: coffee
Steep the tea -> Enjoy [end, good]
Brew the coffee -> Enjoy

用一行三个短横线可以在一段文本中放入多个图表,它们会并排绘制:

教程从 Divooka Compute 中的一个示例开始。
参考
- 其他一些工具:Utilities
- RFC:RFC 025