Używam achartengine dla danych, które moja aplikacja ciągle otrzymuje przez połączenie z gniazdem. Punkt narysowany jest względem czasu, który jest moją osią x. Po umieszczeniu wykresu użytkownik może przesuwać i powiększać wykres. Wszystko jest gładkie jak maślanka. Jedynym problemem jest to, że gdy użytkownik powiększy wykres, części wykresu są również widoczne po drugiej stronie osi X i Y.Wykres widoczny poza osiami X i Y
Jak ograniczyć wyświetlanie wykresu poza osiami X i Y?
Oto część mojego kodu.
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
renderer.setChartTitleTextSize(12);
renderer.setLabelsTextSize(15);
renderer.setMarginsColor(Color.argb(0x00, 0x01, 0x01, 0x01));
renderer.setApplyBackgroundColor(true);
renderer.setBackgroundColor(Color.TRANSPARENT);
renderer.setZoomEnabled(true, true);
renderer.setPointSize(5f);
renderer.setShowGrid(true);
renderer.setXTitle(xTitle);
renderer.setYTitle(yTitle);
renderer.setLabelsColor(getResources().getColor(R.color.black));
renderer.setXLabelsColor(getResources().getColor(R.color.black));
renderer.setYLabelsColor(0, getResources().getColor(R.color.black));
renderer.setDisplayValues(true);
renderer.setSelectableBuffer(20);
renderer.setShowLegend(false);
renderer.setRange(new double[] { timeSeriesChart.getMinX(),
timeSeriesChart.getMaxX(), 0/* minY */, maxY });
renderer.setPanLimits(getChartLimit(
isTimeChart, timeSeriesChart.getMinX(), timeSeriesChart.getMaxX(),
(maxY*-1)+timeSeriesChart.getMinY(),
maxY));
Jakiej wersji AChartEngine używasz? –
Używam wersji 1.1.0 – Umesh
Czy pobrałeś ją stąd: http://code.google.com/p/achartengine/downloads/list? –