Skip to content

ui/blueskylogging/logPlotData

Interfaces

LogColumn

Defined in: ui/blueskylogging/logPlotData.ts:9

One column of a parsed log file.

Properties

name
name: string;

Defined in: ui/blueskylogging/logPlotData.ts:10

numeric
numeric: boolean;

Defined in: ui/blueskylogging/logPlotData.ts:12

True when (almost) every non-empty cell parses as a finite number.


ParsedLog

Defined in: ui/blueskylogging/logPlotData.ts:16

A parsed data log: typed columns plus row-major data.

Properties

columns
columns: LogColumn[];

Defined in: ui/blueskylogging/logPlotData.ts:17

rows
rows: (string | number)[][];

Defined in: ui/blueskylogging/logPlotData.ts:19

Row-major cells: numbers in numeric columns (NaN when unparseable), strings elsewhere.

comments
comments: string[];

Defined in: ui/blueskylogging/logPlotData.ts:21

'#' comment lines from the file head, without the marker.

groupColumn
groupColumn: number | null;

Defined in: ui/blueskylogging/logPlotData.ts:27

Index of the first non-numeric column (typically traf.id callsigns), used to split rows into one series per aircraft; null when every column is numeric.

skipped
skipped: number;

Defined in: ui/blueskylogging/logPlotData.ts:29

Rows dropped because their field count did not match the table.


SeriesPoint

Defined in: ui/blueskylogging/logPlotData.ts:162

One plottable point; row is the source row index (for readouts).

Properties

x
x: number;

Defined in: ui/blueskylogging/logPlotData.ts:163

y
y: number;

Defined in: ui/blueskylogging/logPlotData.ts:164

row
row: number;

Defined in: ui/blueskylogging/logPlotData.ts:165


PlotSeries

Defined in: ui/blueskylogging/logPlotData.ts:169

A named line/point series (one per aircraft when a group column exists).

Properties

label
label: string;

Defined in: ui/blueskylogging/logPlotData.ts:170

points
points: SeriesPoint[];

Defined in: ui/blueskylogging/logPlotData.ts:171


ColumnStats

Defined in: ui/blueskylogging/logPlotData.ts:211

Summary statistics of one numeric column (NaN cells excluded).

Properties

count
count: number;

Defined in: ui/blueskylogging/logPlotData.ts:212

min
min: number;

Defined in: ui/blueskylogging/logPlotData.ts:213

max
max: number;

Defined in: ui/blueskylogging/logPlotData.ts:214

mean
mean: number;

Defined in: ui/blueskylogging/logPlotData.ts:215

Variables

MAX_SERIES

const MAX_SERIES: 40 = 40;

Defined in: ui/blueskylogging/logPlotData.ts:175

More groups than this are folded into the last "…" series.

Functions

parseLogText()

function parseLogText(text): ParsedLog;

Defined in: ui/blueskylogging/logPlotData.ts:51

Parse the text of a data log file. Lines starting with '#' are collected as comments; the remaining lines are split on commas. The column count is the most common field count among data lines (rows with a different count are dropped and tallied in skipped). Column names come from the last comment line that splits into exactly that many comma-separated tokens (a user-provided "simt, id, lat, ..." header); otherwise the first column is called simt when numeric (BlueSky's periodic logger always writes simulation time first) and the rest col2, col3, ...

Parameters

text

string

Returns

ParsedLog


plotabilityError()

function plotabilityError(log): string | null;

Defined in: ui/blueskylogging/logPlotData.ts:137

Returns a human-readable reason the quick-look plot cannot honestly draw this log, or null when it can (a periodic data log with simulation time first). Event loggers such as CONFLOG/FLSTLOG pass their values as extra log() arguments, so their "# simt" column line names fewer fields than the rows carry — that mismatch marks a format this viewer cannot plot.

Parameters

log

ParsedLog

Returns

string | null


buildSeries()

function buildSeries(
   log, 
   xCol, 
   yCol
): PlotSeries[];

Defined in: ui/blueskylogging/logPlotData.ts:185

Build plot series from two numeric columns, split into one series per distinct value of the log's group column (typically the aircraft id) in first-appearance order. Rows where either coordinate is not finite are skipped. When the log has no group column, one series named 'data' holds every row. At most MAX_SERIES groups are kept; the overflow goes into a final series so the point count stays honest.

Parameters

log

ParsedLog

xCol

number

yCol

number

Returns

PlotSeries[]


columnStats()

function columnStats(log, col): ColumnStats | null;

Defined in: ui/blueskylogging/logPlotData.ts:219

Stats for a numeric column, or null for non-numeric/empty columns.

Parameters

log

ParsedLog

col

number

Returns

ColumnStats | null


formatValue()

function formatValue(value): string;

Defined in: ui/blueskylogging/logPlotData.ts:238

Compact number formatting for axis ticks, readouts and stats tables.

Parameters

value

number

Returns

string