Horizontal Bar Chart

Hi Shruti,


You are very welcome.

Best Regards,

Hi,


Is there a way to track the progress on this case?

Please let me know, when can I expect an update on this case?


Thanks,
Shruti

Hi Shruti,


I regret to share that customer have no access to our issue tracking system. You will be notified automatically once issue will be fixed. This issue has been added recently in our issue tracking system. I have requested our product team to share investigation details with us. We will share good news with you soon. I request for your patience until issue gets fixed.

Best Regards,

Hi Adnan,


Can you give me any update on this issue as we are getting close to our production release date?
In what condition / platform / office version the issue exists?
Is this Microsoft or Aspose issue?
Any workaround to this issue?

Hi,


Our product team has further investigated the issue. Actually, you have used wrong value for setWrapText() method:

series.getDataPoints().get_Item(counter).getLabel().getTextFormat().getTextBlockFormat().setWrapText((byte) 10000000);

The values for setWrapText() method may be only NullableBool.True or NullableBool.False. Unfortunately this issue still reproduced in MS Office 2016 for Aspose.Slides for .NET and Aspose.Slides for Java (in MS Office 2010 all work fine), therefore this issue is blocked internally with some other issue. We will share the notification with you as soon as the issue will be fixed.


We are sorry for your inconvenience,

Hi Mudassir,

We have fixed the setWrapText parameter, and like you said the issue still persists on Office 2016. Can you please give us any update on the investigation and estimate of when this issue can be resolved?
Hi Shruti,

I have observed your comments. I like to share this issue is going to be resolved tentatively in Aspose.Slides 16.11.0. We will share any further updates with you soon.

Best Regards,

Can you please give me a timeline for Aspose.Slides 16.11.0 ?

Thanks

Hi Shruti,


I have observed your comments. I like to share that Aspose.Slides 16.11.0 will be released in December 2016.

Best Regards,

The issues you have found earlier (filed as SLIDESJAVA-35668) have been fixed in this update.


This message was posted using Notification2Forum from Downloads module by Aspose Notifier.

Hello,


We still see this issue with the newer version of Aspose library. Can you please confirm if the fix was shipped in the 16.11.0 version?

Thanks,
Shruti

Hi Shruti,


I have discussed this issue with our product team and got feedback. I like to inform that issue is not a bug in Aspose.Slides. PP2010 and PP2016/13 are cutting data label’s text different ways. PP2010 cuts the end of text if it goes outside of the chart area. PP2013/16 moves data label to avoid text cutting. We can not change PowerPoint logic so we can not fixed this issue as you need.

We are sorry for your inconvenience,

Hi Adnan,


I did analyze the positioning of labels based on your earlier input. But I observed that the overlapping issue is not due to the length of the labels exceeding the length of the chart area or length of the bar.

As you can see in attached screenshots 1,3,4,5. The size of chart is much larger than the length of labels.

Please let me know your thoughts on this.

Thanks,
Shruti

Hi Shruti,


We are looking into this. We will get back to you with feedback soon.

Best Regards,

Hi Adnan,


Do you have any update for us?
This issue is visible to most of our customers, so we need to provide a quick solution or workaround.


Hi Shruti,


I have observed your comments. Please give us some time our concerned developer is not available. We will get back to you with feedback soon.

We are sorry for your inconvenience,

Hi,


Would aspose give any faster response, if we buy an additional support license?
There must be other customers experience / report the same issue, since this is such a fundamental and visible issue with Office 2016.


Hi Shruti,


I have observed your comments and discussed your issue with our product team. We have reopened issue and scheduled re-investigation this on this week. Can you please provide code for this chart or this chart so that product team investigate issue again.

We are sorry for your inconvenience,

Here is the java class that we have to manipulate a bar chart. We have tried the various values in LegendDataLabelPosition, but none of the options is working for us. Please provide any suggestion to try.


p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco} span.s1 {color: #0326cc} span.Apple-tab-span {white-space:pre}

getLabel().getDataLabelFormat().setPosition(LegendDataLabelPosition.InsideBase)


public class DrawBarChart{

private List seriesList;

private List dataPoints;

private IChart chart;

private int size;

private int minDataPts;

private int maxDataPts;

private TrafficUnits units;



public DrawBarChart(IChart chart, List seriesList, List dataPoints) {

this.seriesList = seriesList;

this.dataPoints = dataPoints;

this.chart = chart;

this.size = seriesList.size();

this.units = TrafficUnits.TRANSACTIONS;

this.minDataPts=5; //Default

this.maxDataPts=10; //Default

}


public TrafficUnits getUnits() {

return units;

}


public void setUnits(TrafficUnits units) {

this.units = units;

}

public void setSize(int min,int max){

if (min >= 0) this.minDataPts=min;

if (max >= 0) this.maxDataPts=max;

}

public IChart drawChart() {


int fillerSize = 0;

if (size < minDataPts) {


fillerSize = minDataPts - size;


for (int i = size; i <= minDataPts; i++) {

dataPoints.add(i, 0L);

}

} else if (size > maxDataPts) {

size = maxDataPts;

}

int defaultWorksheetIndex = 0;

chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);

// Getting the chart data work sheet

IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();

// Delete default generated series and categories

chart.getChartData().getSeries().clear();

chart.getChartData().getCategories().clear();

int s = chart.getChartData().getSeries().size();

s = chart.getChartData().getCategories().size();


//Add series

for(int i=0;i<size;i++){

chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, i+1, seriesList.get(i)), chart.getType());

}

int seriesCount = chart.getChartData().getSeries().size();

// Add series

for (int i = 1; i <= fillerSize; i++) {

chart.getChartData().getSeries()

.add(fact.getCell(defaultWorksheetIndex, 0, seriesCount + i, "NIL_SERIES"+i), chart.getType());

}


// Add categories

for (int i = 0; i < size; i++) {

chart.getChartData().getCategories()

.add(fact.getCell(defaultWorksheetIndex, i + 1, 0, DataFormatter.formatValue(dataPoints.get(i),units,false)));

}


int categoriesCount = chart.getChartData().getCategories().size();

// Add categories

for (int i = 1; i <= fillerSize; i++) {

chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, categoriesCount + i, 0, " "));

}

size+=fillerSize; //Loop through the total number of series

//Add data points for each series

for (int currentSeries = 1; currentSeries <= size; currentSeries++) {


// Take first chart series

IChartSeries series = chart.getChartData().getSeries().get_Item(currentSeries - 1);


IChartDataPoint point;


for (int i = 1; i <= size; i++) {

if (i != currentSeries)

point = series.getDataPoints()

.addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, currentSeries, i, null));

else { // i==currentSeries

point = series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex,

currentSeries, currentSeries, dataPoints.get(currentSeries - 1)));

}

}


series.getFormat().getFill().setFillType(FillType.Solid);

series.getFormat().getFill().getSolidFillColor().setColor(CustomColors.ZSCALAR_BLUE);

if (series.getName().toString().contains("NIL_SERIES")) {

series.getDataPoints().get_Item(currentSeries - 1).getLabel().getDataLabelFormat().setShowSeriesName(false);

} else {

series.getDataPoints().get_Item(currentSeries - 1).getLabel().getDataLabelFormat().setShowSeriesName(true);

}


series.getDataPoints().get_Item(currentSeries - 1).getLabel().getDataLabelFormat()

.setPosition(LegendDataLabelPosition.InsideBase);

series.getDataPoints().get_Item(currentSeries - 1).getLabel().getTextFormat().getTextBlockFormat()

.setWrapText(NullableBool.False);

series.getDataPoints().get_Item(currentSeries - 1).getLabel().getTextFormat().getPortionFormat()

.setFontHeight(9);

series.getDataPoints().get_Item(currentSeries - 1).getLabel().getTextFormat().getPortionFormat()

.getFillFormat().getSolidFillColor().setColor(CustomColors.NERO);

series.getFormat().getEffect().enableOuterShadowEffect();

series.getFormat().getEffect().getOuterShadowEffect().setBlurRadius(0);

series.getFormat().getEffect().getOuterShadowEffect().setDirection(0);

series.getFormat().getEffect().getOuterShadowEffect().setDistance(0);

series.getFormat().getEffect().getOuterShadowEffect().setRectangleAlign((byte) 0);

series.getFormat().getEffect().getOuterShadowEffect().setRotateShadowWithShape(false);

series.getFormat().getEffect().getOuterShadowEffect().setScaleVertical(0);

series.getFormat().getEffect().getOuterShadowEffect().setScaleHorizontal(0);

series.getFormat().getEffect().getOuterShadowEffect().setSkewHorizontal(0);

series.getFormat().getEffect().getOuterShadowEffect().setSkewVertical(0);

}

//Format chart

chart.getChartData().getSeriesGroups().get_Item(0).setGapWidth(30);

chart.getChartData().getSeriesGroups().get_Item(0).setOverlap((byte) 100);


chart.getAxes().getHorizontalAxis().setVisible(false);

chart.getAxes().getHorizontalAxis().getMajorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);

chart.getAxes().getHorizontalAxis().getMinorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);

chart.getAxes().getVerticalAxis().setMajorTickMark(TickMarkType.None);

chart.getAxes().getVerticalAxis().getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);

chart.getAxes().getVerticalAxis().setPlotOrderReversed(true);

chart.getAxes().getVerticalAxis().getTextFormat().getPortionFormat().setFontHeight(10);

chart.getAxes().getVerticalAxis().getTextFormat().getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GRAY);

chart.setLegend(false);

return chart;

}

}

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; min-height: 15.0px} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco} p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #931a68} p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #0326cc} p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #4e9072} span.s1 {color: #931a68} span.s2 {color: #0326cc} span.s3 {color: #000000} span.s4 {color: #4e9072} span.s5 {text-decoration: underline} span.s6 {color: #3933ff} span.Apple-tab-span {white-space:pre}

Hi Shruti,


Thanks for sharing information with us. We will get back to you with feedback soon.

Best Regards,