|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
   AutoIt (Programación) Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  Teleco - Emisora de A.M. Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


Nuevo concurso para España, Argentina, Brasil, Chile, Colombia, Ecuador, México, Perú y Portugal.

B4A en español - Juan Antonio Villalpando
(BASIC4Android)

-- Tutorial de B4A --

Volver al índice del tutorial

____________________________

105.- Funciones matemáticas con API Chart de Google.

1.- Podemos obtener datos de un servidor web comunicándonos con él directamente o bien que ese servidor tenga una API para que a través un programa cliente (como puede ser un navegador web) el usuario se pueda comunicar con ese servidor.


Imagen obtenida de:
http://www.appinventor.org/assets/pdf/ch24API.pdf
(traducido al español)

APIs de Google.

API en App Inventor.

El concepto de API es más extenso, pero en esta ocasión trata de un código de Google que permite públicamente que podamos utilizarlo desde un navegador web.


Google chart, es una API de Google que nos permite escribir una línea de dirección web, con cierto formato, y nos devuelve un gráfico de tipo estadístico, barras, tarta, trazos,... y también lo podemos utilizar para que nos dibuje una función,

- Esta es la web de Google chart: https://developers.google.com/chart/?csw=1

- Ejemplos de Google chart: https://developers.google.com/chart/interactive/docs/gallery

- Ejemplos de gráficos estadísticos y funciones encontrados en internet:

- http://chart.apis.google.com/chart?cht=lc&chd=t:-1&chds=-1,1&chs=500x500&chco=0000FF&chfd=0,x,0,7,0.001,sin(x)&chxt=x,y&chx0,0,7|1,-1,1    (de aquí)

- http://chart.apis.google.com/chart?cht=tx&chco=FF0000&chl=x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}   (escribir fórmulas)

- http://chart.apis.google.com/chart?cht=bvg&chxt=y&chbh=a&chs=300x225&chco=A2C180&chtt=Vertical+bar+chart&chd=t:10,50,60,80,40,60,30

(de aquí)

- Aquí puedes ver más ejemplos: http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=googleChart

- Otro ejemplo:

http://chart.apis.google.com/chart?cht=lc&chd=t:-1&chds=0,20&chs=250x150&chco=FF0000&chxr=0,0,11|1,0,20&chxt=x,y&chfd=0,x,0,11,0.1,sin(x)*4%2B5   (de aquí)

_______________________________________________________

- Funciones con la API Chart de Google.

- http://chart.apis.google.com/chart?cht=lc&chd=t:-1&chs=400x400&chco=0000FF&chxr=0,0,14|1,-1,1&chds=-1,1&chxt=x,y&chfd=0,x,0,14,0.001,sin(x)

Observamos que unos caracteres son fijos y otros los vamos a suministrar para dar las dimensiones de la gráfica, las coordenadas máximas de X e Y, la fórmula, la escala y el color.

Cada uno alimenta a una variable de tipo ch

Estas variables pueden ir en otro orden distinto al indicado arriba.

La barra vertical | (que está en la tecla 1), la pondremos mediante su código ASCII, este es: %7C


http://chart.apis.google.com/chart
?cht=lc
&chd=t:-1
&chs=Horizontal×Vertical
&chco=Color
&chds=Ymin,Ymax
&chxr=0,Xmin,Xmax|1,Ymin,Ymax
&chxt=x,y
&chfd=0,x,Xmin,Xmax,Escala,Formula

 

http://chart.apis.google.com/chart
?cht=lc
&chd=t:-1
&chs=400x400
&chco=0000FF
&chds=-1,1
&chxr=0,0,14
%7C1,-1,1
&chxt=x,y
&chfd=0,x,0,14,0.001,sin(x)


Vamos a realizar una aplicación en donde el usuario suministrará los distintos parmámetros que componen la gráfica, que se irán añadiendo a una variable de texto, ésta formará la dirección del chart.apis, cuando la tengamos, mediante un navegador iremos a esa dirección y nos dibujará la gráfica en la pantalla.

Ponemos los View que indico, menos el WebView, cuando lo tengamos todos ponemos encima de todos menos en los botones un WebView1 y lo mandamos atrás mediante Tools /SendToBack en el Designer.
O sea, el WebView1 lo ponemos encima de todos los View, desde arriba de la pantalla hasta arriba de los botones, cubrirá a todos menos a los botones. Cuando tengamos situado el WebView1, lo enviamos atrás para que no se vea.

 

Código B4A
#Region  Project Attributes 
    #ApplicationLabel: API Chart
    #VersionCode: 1
    #VersionName: 
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: unspecified
    #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes 
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
' Juan Antonio Villalpando
' juana1991@yahoo.com
' diciembre 2014
End Sub

Sub Globals
Dim EditText1, EditText2, EditText3, EditText4, EditText5 As EditText
Dim EditText6, EditText7, EditText8, EditText9 As EditText
Dim WebView1 As WebView
Dim enlace As String

End Sub

Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("Layout")
    Activity.Color=Colors.White
    WebView1.visible=False

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub


Sub Button1_Click
    enlace = "http://chart.apis.google.com/chart?cht=lc&chd=t:-1&chs="
    enlace = enlace & EditText1.text & "x" & EditText2.text
    enlace = enlace & "&chco=" & EditText3.text
    enlace = enlace & "&chds=" & EditText4.text & "," &  EditText5.text
    enlace = enlace & "&chxr=0," & EditText6.text & "," & EditText7.text
    enlace = enlace & "%7C1," & EditText4.text & "," & EditText5.text
    enlace = enlace & "&chxt=x,y&chfd=0,x," & EditText6.text & "," & EditText7.text
    enlace = enlace & "," & EditText8.text  & "," & EditText9.text
    WebView1.visible=True
    WebView1.BringToFront
    WebView1.LoadUrl(enlace)
End Sub
Sub Button2_Click
    WebView1.visible=False
    WebView1.SendToBack
End Sub

________________
- Comentarios.

Supongamos que queremos ver la gráfica de esta función:

5 + 5 * cos(x)

Debemos poner en el CampoDeTexto de la Fórmula:

5%2B5*cos(x)

Fíjate que el signo más (+), lo escribimos mediante su código ASCII, este es: %2B

- Podemos construir la fórmula mediante estas funciones:
http://muparser.beltoforion.de/mup_features.html

 

- Más ejemplos: (de aquí)

http://chart.apis.google.com/chart?cht=lc&chd=t:-1|15,45&chs=250x150&chco=FF0000,000000&chfd=0,x,0,11,0.1,sin(x)*50%2B50&chxt=x,y&chm=c,00A5C6,0,110,10%7C,00A5C6,0,60,10

http://chart.apis.google.com/chart?cht=lxy&chs=250x250&chd=t:0|0|0&chxs=0,ff0000,12,0,lt|1,0000ff,10,1,lt&chfd=0,x,0,360,1.9,sin(4*x)*40%2b50|1,y,0,360,1.9,cos(6*y)*40%2b50&chf=c,lg,90,FFFF00,0,FF9933,1&chco=006699

http://chart.apis.google.com/chart?cht=gv&chs=250x250&chl=digraph{A-%3EB-%3EC;A-%3EC}

__________________________

Bueno pues esta es la idea, de manera similar al dibujo de la función, podemos dibujar un gráfico estadístico como hemos mencionado al principio de la página.

________________________________

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información