fpspreadsheet: xlsx writer supports inverted axes.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@9217 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz 2024-02-06 10:16:56 +00:00
parent b311808e0e
commit 79b9ec99f3
2 changed files with 7 additions and 1 deletions

View File

@ -111,6 +111,7 @@ begin
ch.YAxis.Logarithmic := true;
end;
end;
ch.XAxis.Inverted := true;
// Add scatter series
ser := TsScatterSeries.Create(ch);

View File

@ -3620,12 +3620,15 @@ end;
procedure TsSpreadOOXMLChartWriter.WriteChartAxisScaling(AStream: TStream;
AIndent: Integer; Axis: TsChartAxis);
const
INVERTED: array[boolean] of String = ('minMax', 'maxMin');
var
indent: String;
intv: Double;
logStr: String = '';
maxStr: String = '';
minStr: String = '';
orientationStr: String;
begin
indent := DupeString(' ', AIndent);
@ -3638,12 +3641,14 @@ begin
if Axis.Logarithmic then
logStr := indent + Format(' <c:logBase val="%g"/>', [Axis.LogBase], FPointSeparatorSettings) + LE;
orientationStr := indent + Format(' <c:orientation val="%s"/>', [ INVERTED[Axis.Inverted] ]) + LE;
AppendToStream(AStream,
indent + '<c:scaling>' + LE +
maxStr +
minStr +
logStr +
indent + ' <c:orientation val="minMax"/>' + LE +
orientationStr +
indent + '</c:scaling>' + LE
);