chart crashes when scroll it many time
GoogleCodeExporter opened this issue · comments
What steps will reproduce the problem?
1. Creating chart:
AFreeChart chart = ChartFactory.createBarChart(
"", // chart title
"Project Milestones", // domain axis label
"Project Duration, In Days", // range axis label
dataset, // data
PlotOrientation.HORIZONTAL, // orientation
false, // include legend
true, // tooltips?
false // URLs?
);
// NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
// set the background color for the chart...
chart.setBackgroundPaintType(new SolidColor(Color.BLACK));
// get a reference to the plot for further customisation...
CategoryPlot plot = (CategoryPlot) chart.getPlot();
// set the range axis to display integers only...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setLabelPaintType(new SolidColor(Color.WHITE));
rangeAxis.setTickLabelPaintType(new SolidColor(Color.WHITE));
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
plot.getDomainAxis().setLabelPaintType(new SolidColor(Color.WHITE));
plot.getDomainAxis().setTickLabelPaintType(new SolidColor(Color.WHITE));
// disable bar outlines...
BarRenderer renderer = (BarRenderer) plot.getRenderer();
renderer.setDrawBarOutline(false);
renderer.setShadowVisible(false);
// set up gradient paints for series...
GradientColor gp0 = new GradientColor(Color.RED, Color.rgb(64, 0, 0));
GradientColor gp1 = new GradientColor(Color.BLUE, Color.rgb(0, 0, 64));
renderer.setSeriesPaintType(0, gp0);
renderer.setSeriesPaintType(1, gp1);
2. Scrolling it many times and it crashes:
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ "main" prio=5 tid=1
RUNNABLE
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ | group="main"
sCount=0 dsCount=0 obj=0x4137b6a0 self=0x41364988
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ | sysTid=8842 nice=0
sched=0/0 cgrp=apps handle=1075345488
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ | schedstat=( 0 0 0 )
utm=261 stm=43 core=1
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.graphics.Paint.native_measureText(Native Method)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.graphics.Paint.measureText(Paint.java:1389)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.text.TextUtilities.getTextWidth(TextUtilities.java:284)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.text.G2TextMeasurer.getStringWidth(G2TextMeasurer.java:99)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.text.TextUtilities.nextLineBreak(TextUtilities.java:220)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.text.TextUtilities.createTextBlock(TextUtilities.java:181)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.axis.CategoryAxis.createLabel(CategoryAxis.java:1291)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.axis.CategoryAxis.refreshTicks(CategoryAxis.java:1170)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.axis.CategoryAxis.drawCategoryLabels(CategoryAxis.java:1031)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.axis.CategoryAxis.draw(CategoryAxis.java:995)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.plot.CategoryPlot.drawAxes(CategoryPlot.java:4066)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.plot.CategoryPlot.draw(CategoryPlot.java:3831)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
org.afree.chart.AFreeChart.draw(AFreeChart.java:1167)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
com.vritrac.ui.widgets.DemoView.paintComponent(DemoView.java:796)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
com.vritrac.ui.widgets.DemoView.onDraw(DemoView.java:677)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.draw(View.java:13650)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12601)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2920)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12537)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.View.getDisplayList(View.java:12645)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1170)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewRootImpl.draw(ViewRootImpl.java:2276)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2148)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1959)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1113)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4475)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.Choreographer.doCallbacks(Choreographer.java:555)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.Choreographer.doFrame(Choreographer.java:525)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.os.Handler.handleCallback(Handler.java:615)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.os.Handler.dispatchMessage(Handler.java:92)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.os.Looper.loop(Looper.java:137)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
android.app.ActivityThread.main(ActivityThread.java:4918)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
java.lang.reflect.Method.invokeNative(Native Method)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
java.lang.reflect.Method.invoke(Method.java:511)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ at
dalvik.system.NativeStart.main(Native Method)
02-04 14:37:49.102 8842-8842/com.vritrac I/dalvikvm﹕ [ 02-04 14:37:49.102
8842: 8842 E/dalvikvm ]
Original issue reported on code.google.com by bobroale...@gmail.com
on 4 Feb 2014 at 12:38