Hi Pujol1986,
1 and 2. ColorGrids series is the series more similar series than what I think you are trying to achieve. But it wasn't thought to draw a graphic like yours so there will be some limitations to do this.
The first limitation will be the depth. ColorGrid series has no volume in depth.
The second is the irregularity. If you have an irregular grid, you'll have an extra cell drawn in the right that will have the same width than the last. That means that if you want some cells different in size than the others, it can't be the last nor the penultimate.
Here there is a "simple" example:
Code: Select all
tChart1.Aspect.Chart3DPercent = 50;
tChart1.Legend.Visible = false;
for (int i = 0; i < 3; i++)
{
ColorGrid colorgrid1 = new ColorGrid(tChart1.Chart);
colorgrid1.IrregularGrid = true;
colorgrid1.Add(0, 0, 0);
colorgrid1.Add(0, 1, 1);
colorgrid1.Add(0, 0, 2);
colorgrid1.Add(0, 2, 3);
colorgrid1.Add(1, 1, 0);
colorgrid1.Add(1, 0, 1);
colorgrid1.Add(1, 2, 2);
colorgrid1.Add(1, 1, 3);
colorgrid1.Add(2, 0, 0);
colorgrid1.Add(2, 2, 1);
colorgrid1.Add(2, 2, 2);
colorgrid1.Add(2, 0, 3);
colorgrid1.Add(3.5, 1, 0);
colorgrid1.Add(3.5, 0, 1);
colorgrid1.Add(3.5, 2, 2);
colorgrid1.Add(3.5, 0, 3);
colorgrid1.Add(4.5, 0, 0);
colorgrid1.Add(4.5, 1, 1);
colorgrid1.Add(4.5, 2, 2);
colorgrid1.Add(4.5, 0, 3);
ColorGrid colorgrid2 = new ColorGrid(tChart1.Chart);
colorgrid2.IrregularGrid = true;
colorgrid2.Add(0, 0, 0);
colorgrid2.Add(0, 1, 0.25);
colorgrid2.Add(0, 2, 0.5);
colorgrid2.Add(0, 0, 0.75);
colorgrid2.Add(0.2, 1, 0);
colorgrid2.Add(0.2, 2, 0.25);
colorgrid2.Add(0.2, 0, 0.5);
colorgrid2.Add(0.2, 1, 0.75);
colorgrid2.Add(0.5, 1, 0);
colorgrid2.Add(0.5, 0, 0.25);
colorgrid2.Add(0.5, 1, 0.5);
colorgrid2.Add(0.5, 2, 0.75);
colorgrid2.Add(0.75, 2, 0);
colorgrid2.Add(0.75, 2, 0.25);
colorgrid2.Add(0.75, 0, 0.5);
colorgrid2.Add(0.75, 1, 0.75);
ColorGrid colorgrid3 = new ColorGrid(tChart1.Chart);
colorgrid3.IrregularGrid = true;
colorgrid3.Add(2, 0, 3);
colorgrid3.Add(2, 1, 3.25);
colorgrid3.Add(2, 0, 3.5);
colorgrid3.Add(2, 2, 3.75);
colorgrid3.Add(2.2, 2, 3);
colorgrid3.Add(2.2, 2, 3.25);
colorgrid3.Add(2.2, 0, 3.5);
colorgrid3.Add(2.2, 1, 3.75);
colorgrid3.Add(2.5, 2, 3);
colorgrid3.Add(2.5, 0, 3.25);
colorgrid3.Add(2.5, 1, 3.5);
colorgrid3.Add(2.5, 0, 3.75);
colorgrid3.Add(3, 1, 3);
colorgrid3.Add(3, 2, 3.25);
colorgrid3.Add(3, 0, 3.5);
colorgrid3.Add(3, 1, 3.75);
colorgrid1.ZOrder = i+1;
colorgrid2.ZOrder = i+1;
colorgrid3.ZOrder = i+1;
}
tChart1.Axes.Bottom.SetMinMax(0, 5.5);
3. The easiest way to achieve this, probably is using gantt series. Something like following:
Code: Select all
tChart1.Aspect.View3D = false;
Gantt gantt1= new Gantt(tChart1.Chart);
gantt1.XValues.DateTime = false;
gantt1.Add(0,10,0);
gantt1.Add(15, 20, 0);
gantt1.Add(30, 33, 0);
gantt1.Add(0, 20, 1);
gantt1.Add(5, 10, 2);
gantt1.Add(12, 15, 2);
gantt1.Add(20, 30, 2);
gantt1.Add(3, 8, 3);
gantt1.Add(13, 25, 3);
gantt1.Add(27, 35, 3);
Also, you could use map series to create your custom polygons.