¿Cómo puedo dibujar curva sin fisuras usando gráficos de Android?

Quiero dibujar curva sin fisuras usando gráficos de Android usando como followings

canvas.quadTo(.....); 

Android referencia dijo que este método con la curva de Bezier

Pero este método no soporta la curva de dibujo que tiene más de tres puntos

P1, P2, P3, P4, P5

¿Cómo puedo dibujar curvas como las siguientes?

Matlab

He oído que esto es "ajuste de curva no lineal".

¿Existe una biblioteca de adaptación de curvas disponible para Android?

Mientras que para iPhone tienes el DataAnalysis , para Android puedes usar Google Analytics SDK v2 para lo que tienes en mente.

Aquí hay un ejemplo de una consulta:

 var lineChart = getChartObj(); lineChart.setParams(barChart.getParams()); lineChart.setParam('cht', 'lc'); lineChart.setParam('chm', ''); var lineChartURL = paramsToURL(chartData.chartParams, chartData.baseURL); drawChart('visitorDiv',lineChartURL); 

Puede resultar interesante comprobar más detalles en los gráficos para que coincidan con el modelo que desea trazar.

Otra alternativa que también puede considerar es QML usando Line Gráfico con Qt Quick :

 Graph.LineGraph { width: parent.width height: parent.height - legend.height - parent.spacing model: learningProgressModel dimensions: [ Graph.Dimension { id: accuracyDimension dataColumn: 5 color: "#ffb12d" maximumValue: 1.0 label: i18n("Accuracy") unit: "%" unitFactor: 100 }, Graph.Dimension { id: charactersPerMinuteDimension dataColumn: 6 color: "#38aef4" maximumValue: 400 label: i18n("Characters per Minute") } ] } 

Octave para Android también puede ser interesante , especialmente si desea tener una amplia opción de trazar modelos. Puede utilizar el comando drawBezierCurve , proporcionando sólo los puntos de sus datos:

 points = [0 0; 3 1; -2 1; 1 0]; drawBezierCurve(points); hold on plot(points([1 4],1),points([1 4],2),'go'); plot(points([2 3],1),points([2 3],2),'rs'); line(points([1 2],1),points([1 2],2),'color','k'); line(points([3 4],1),points([3 4],2),'color','k'); h = drawBezierCurve(points, 'discretization', 6, 'color','r'); hold off 

A continuación, para lograr el ajuste de curva no lineal que desea mostrar en su Android, sólo tiene que utilizar los datos o el modelo que mejor se adapte a su necesidad.

  • androide- Necesito diseñar gráfico de 180 grados (gráfico de medio pastel)
  • Gráfico de CandleStick: Replicación de valores abiertos y cerrados durante el zoom
  • Tratando de agregar fecha en el eje X - GraphView para android
  • Representación dinámica de gráficos en Android
  • Construir LinearLayout de forma programática
  • Cómo dibujar un gráfico circular en android
  • Cómo dibujar gráfico en Android?
  • MPAndroidChart: agregar imagen personalizada dentro de las barras
  • Pasar de una actividad a otra
  • ¿Dibuja gráficas en android utilizando Graphview?
  • Cómo hacer un gráfico en tiempo real de rollingwindow usando MPAndroidChart
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.