Hi Ricardo,
The first two propertis - FirstRowFitModes, GroupRowFitModes define how the scale behaves when there are overapping labels in the first row or any of the group rows (if present). When you have some of the "rotate" fit strategies they ignore angle label settings when overlapping occurs:
NChart chart = nChartControl1.Charts[0];
NBarSeries bar = new NBarSeries();
bar.Values.Add(10);
bar.Values.Add(20);
bar.Values.Add(20);
bar.Values.Add(30);
chart.Series.Add(bar);
NHierarchicalScaleConfigurator hierScale = new NHierarchicalScaleConfigurator();
NHierarchicalScaleNode groupNode1 = new NHierarchicalScaleNode();
groupNode1.Text = "Group 1";
NHierarchicalScaleNode groupNode2 = new NHierarchicalScaleNode();
groupNode2.Text = "Group 2";
NHierarchicalScaleNode node11 = new NHierarchicalScaleNode();
node11.Length = 1;
node11.Text = "Node 1";
node11.LabelStyle.Angle = new NScaleLabelAngle(90);
NHierarchicalScaleNode node12 = new NHierarchicalScaleNode();
node12.Length = 1;
node12.Text = "Node 2";
NHierarchicalScaleNode node13 = new NHierarchicalScaleNode();
node13.Length = 1;
node13.Text = "Node 3";
NHierarchicalScaleNode node14 = new NHierarchicalScaleNode();
node14.Length = 1;
node14.Text = "Node 4";
groupNode1.ChildNodes.Add(node11);
groupNode1.ChildNodes.Add(node12);
groupNode2.ChildNodes.Add(node13);
groupNode2.ChildNodes.Add(node14);
hierScale.Nodes.Add(groupNode1);
hierScale.Nodes.Add(groupNode2);
hierScale.FirstRowFitModes = new LabelFitMode[] { LabelFitMode.Rotate30 };
hierScale.GroupRowFitModes = new LabelFitMode[] { LabelFitMode.Rotate30 };
chart.Axis(StandardAxis.PrimaryX).ScaleConfigurator = hierScale;
Similarly FirstRowRangeFitMode, GroupRowRangeFitMode define how the labels fit in the range they occupy. When it becomes smaller than the label you may want to wrap, rotate or auto scale:
hierScale.GroupRowRangeFitMode = RangeLabelFitMode.AutoFlip;
hierScale.FirstRowRangeFitMode = RangeLabelFitMode.AutoFlip;
Since range fitting will practically disable overlapping (as each label fits in its range) it will also discard the settings fit mode.
To summarize FirstRowFitModes and GroupRowFitModes defines how labels behave when they overlap where FirstRowRangeFitMode and GroupRowRangeFitMode defines how labels fit inside their range. If they do fit there should be no overlapping.
Best Regards,
Nevron Support Team