xlsx-kit@0.4.0
Minor Changes
-
f9f273dThanks @baseballyama! - Expose the full ECMA-376 axis attribute surface onCategoryAxisand
ValueAxis. Previously the serializer emitted fixed defaults for several
elements; these are now driven by typed fields, unblocking horizontal-bar
reversal (scaling.orientation: 'maxMin'), 100 %-stacked axis caps
(scaling.max), value-axis crossing rules, custom tick formatting, axis
titles, and more.Newly exposed shared fields:
scaling(orientation/min/max/logBase),
crosses,crossesAt,numFmt,majorTickMark,minorTickMark,
tickLblPos,title,minorGridlines.ValueAxisgainscrossBetween,
majorUnit,minorUnit.CategoryAxisgainsauto,lblAlgn,
lblOffset,noMultiLvlLbl. All previously-emitted defaults remain the
output when fields are unset, so existing files are unchanged.New type exports:
AxisCrossBetween,AxisCrosses,AxisOrientation,
AxisScaling,CategoryLabelAlignment,TickLabelPosition,TickMark.Closes #46.
-
2e5e460Thanks @baseballyama! - Exposeoverlap?: numberonBarChart(andmakeBarChart). The serializer
now emits<c:overlap val="N"/>(range -100..100) inside<c:barChart>when
set, unblocking flush stacking (overlap: 100) and negative-space clustered
bars. When unset, the serializer continues to emit the prior default of
<c:overlap val="100"/>forstacked/percentStackedgrouping so existing
output is unchanged.Closes #45.
-
19e8368Thanks @baseballyama! - Exposestyle?: numberonChartSpace(andmakeChartSpace). The serializer
emits<c:style val="N"/>(range 1..48) between<c:roundedCorners>and
<c:chart>, selecting one of Excel's built-in "Chart Styles" gallery presets
— the same single attribute openpyxl writes viachart.style = N.Closes #48.
-
1541291Thanks @baseballyama! - AddDateAxisandSeriesAxistypes anddateAx?/serAx?slots on
PlotArea.DateAxiscarriesauto,lblOffset,baseTimeUnit,
majorUnit,majorTimeUnit,minorUnit,minorTimeUniton top of the
shared axis surface — unblocking time-series charts (<c:dateAx>).
SeriesAxisaddstickLblSkipandtickMarkSkip, used by surface charts
(<c:serAx>). The serializer emits both inside<c:plotArea>between the
inferred cat/val axes and<c:spPr>; the parser round-trips them.New type exports:
DateAxis,SeriesAxis,TimeUnit. -
0708aa8Thanks @baseballyama! - AddLayout/ManualLayouttypes and exposelayout?: Layouton
ChartTitle,PlotArea, andLegend. The serializer emits
<c:layout><c:manualLayout>withlayoutTarget,xMode/yMode/
wMode/hMode, andx/y/w/hwhen set, falling back to the
existing empty<c:layout/>placeholder when unset — so output is unchanged
for charts that don't configure manual layout. Parser round-trips both
forms.New type exports:
Layout,LayoutMode,LayoutTarget,ManualLayout. -
0989eecThanks @baseballyama! - Expose per-pointdPt?: DataPoint[]onBarSeries(used by bar / line /
area / pie / doughnut / radar / stock / surface),ScatterSeries, and
BubbleSeries, with the newDataPointtype carryingidx,
invertIfNegative?,marker?,bubble3D?,explosion?, andspPr?.
The serializer emits<c:dPt>children between the series'
<c:marker>/<c:spPr>and<c:dLbls>per ECMA-376 sequence — unblocking
per-slice colours on pie / doughnut charts, per-bar colours on single-series
bar charts, and per-point styling on line / scatter / bubble.Closes #44.
-
7f9e143Thanks @baseballyama! - AddinvertIfNegative?: booleanandexplosion?: numbertoBarSeries
(used by bar / line / area / pie / doughnut / radar / stock / surface) and
invertIfNegative?: booleantoBubbleSeries. The serializer emits
<c:invertIfNegative>and<c:explosion>between<c:spPr>and<c:dPt>
per ECMA-376 sequence — unblocking per-series colour inversion on negative
values and pie/doughnut slice explosion at the series level (in addition to
the per-pointDataPoint.explosion). -
ffa777cThanks @baseballyama! - Exposemarker?: MarkeronLineSeriesandScatterSeries(with the new
Marker/MarkerSymboltypes). The serializer emits<c:marker>between
the series'<c:spPr>and<c:dLbls>per ECMA-376 sequence, carrying
<c:symbol>,<c:size>, and an optional nested<c:spPr>for marker
fill / line colour — matching openpyxl'sseries.marker = Marker(...).Closes #47.
-
70a2f17Thanks @baseballyama! - ExtendStockChart.hiLowLinesandStockChart.upDownBarsto accept a
detailed object form in addition to the existing boolean flag. The
detailed form lets callers style the lines (HiLowLines.spPr) and the
up/down bars (UpDownBars.gapWidth+upBars.spPr+downBars.spPr)
with per-element shape properties.The boolean form (
hiLowLines: true) keeps its existing meaning and
output, so existing callers are unaffected. Parser round-trips both
forms, picking the boolean form when no detail is found.New type exports:
BarFrame,HiLowLines,UpDownBars. -
7cd181cThanks @baseballyama! - Addview3D?: View3Dandfloor?/sideWall?/backWall?(typed
SurfaceFrame) toChartSpace(andmakeChartSpace). The serializer
emits<c:view3D>(withrotX,rotY,depthPercent,hPercent,
rAngAx,perspective) and<c:floor>/<c:sideWall>/<c:backWall>
(withthicknessandspPr) between<c:autoTitleDeleted>and
<c:plotArea>per ECMA-376 sequence — unblocking real 3-D chart viewpoints
and wall styling forbar3DChart/line3DChart/pie3DChart/
area3DChart/surface3DChart.