Comment aborder aChartEngine
BunoCS Messages postés 15952 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J'ai codé avec Android Studio une petite appli pour relever les tensions sanguines.
L'appli fonctionne sans problème avec Android Studio et SQLite codé avec java.
Pour visualiser l'évolution des relevés, j'aimerai ajouter un graphique en forme de courbe.
En consultant le net j'ai vu que aChartEngine serait la solution pour visualiser mes données.
1)----Peut-on ajouter un graphique à l'intérieur de mon appli ?
2)----Ou bien faut-il créer une nouvelle appli ?
3)----Quelqu'un aurait-il une doc à me proposer.
J'ai recherché sur le net mais je n'ai rien trouvé de concret !
Merci à +++ cordialement
rapidegoyes
Windows / Firefox 136.0
15 réponses
Hello,
Bien évidemment, tu peux utiliser la même app.
Concernant la doc, rien de mieux que celle fourni par le concepteur de la lib: https://github.com/ddanny/achartengine?tab=readme-ov-file
Bonsoir,
Merci pour le lien que j'ai consulté.
Pour essai je vais dans un premier temps réaliser une appli indépendante.
Ensuite je vais essayer de coder dans mon appli.
Je te tiendrai a courant de l'avancée de mon bricolage.
Merci est +++
Cordialement rapidegoyes
C'est moi, Bobot, l'IA prête à vous surprendre !
1) Oui, il est tout à fait possible d'ajouter un graphique à l'intérieur de ton application existante. aChartEngine est une librairie qui permet d'intégrer des graphiques à une application Android.
2) Il n'est pas nécessaire de créer une nouvelle application. Tu peux intégrer la librairie dans ton projet actuel et utiliser ses fonctionnalités pour dessiner des graphiques à partir de tes données.
3) Pour de la documentation, tu peux te référer à la documentation officielle de aChartEngine. Il y a aussi de nombreux tutoriels et exemples de code sur des sites tels que StackOverflow. Si tu es à l'aise en anglais, la majorité des ressources sont disponibles dans cette langue.
Bonjour à tous,
Merci pour les renseignements que je vais consulter.
En ce moment j'essaye d'incorporer aChartEngine à mon projet.
Je me heurte à déclarer les dépendances et autre include, mes imports ne sont pas reconnu entre autre par exemple: importe.org.achartengine......
Merci et +++
cordialement rapidegoyes.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionBonsoir,
il faut m'excuser pour ce e en trop, dans mon code il n'existe pas!
C'est une faute de frappe au niveau de mon post, je n'ai pas fait de copier collé.
Mon problème est plus complexe c'est un peu tard, je m'explique plus pertinemment demain.
Merci pour le suivi
a+++ cordialement
rapidegoyes
Bonsoir,
Voilà je vais essayer de m'expliquer:
1)--Sur le site de l'éditeur j'ai télécharger le fichier .zip.
2)--Je l'ai décompressé.
3)--Dans mon projet j'ai créé un rep Libs dans lequel j'ai copié achartengine décompressé.
4)--Dans monfichier settings.gradle.kts j'ai copié 2 lignes include -ci-dessous:
include() ":app" ":achartengine"
include() ":Libs:achartengine"
5)--J'ai lancé la synchronisation de gradle, aucun message d'erreur , ça passe.
6)-- j'essaye de coder mais impossible de déclarer les imports nécessaires comme suit:
import org.achartengine.chart.PointStyle; import org.achartengine.chart.TimeChart; import org.achartengine.model.TimeSeries; import org.achartengine.model.XYMultipleSeriesDataset; import org.achartengine.renderer.XYMultipleSeriesRenderer; import org.achartengine.renderer.XYSeriesRenderer;
J'ai vraiment fouillé sur le web impossible de trouver une piste.
A l'instant j'ai modifié les includes comme suit:
include(":app:achartengine") include(":Libs:achartengine")
L'erreur persiste
Merci de bien vouloir m'épauler
Très cordialement à +++
rapidegoyes
Je viens de regarder rapidement, je n'avais pas capté que c'est une très vieille lib.
Essaies de voir sur Android Arsenal si tu n'aurais pas une lib plus récente et encore maintenue: https://android-arsenal.com/search?q=chart
Bonsoir BunoCS
Merci pour le lien, depuis mon dernier post j'ai continué mes recherches et essais suivant des extraits contenus dans le lien ci-dessous.
J'ai eu plein d'erreurs, d'après ce que j'ai compris le projet proposé à importer est de type Maven, codé avec Eclipse.
J'avais quand même réussi à importer mais lors de la compilation toujours des erreurs, j'en ai éliminé quelques une mais hélas pas tout.
Lors de l'import à travers Fichier-Projet Structure - Module, il me demandait à chaque fois un chemin vers un dossier Eclipse-Maven.
Encore merci pour ton aide je vais consulter ton nouveau lien.
A +++ très cordialement
rapidegoyes
Hello,
Tous les articles Android parlant d'Eclipse sont à éviter: ce sont de très vieux articles, obsolètes car Android Studio a largement dépassé Eclipse. Ensuite, l'article cité date de 2019. Il faut bien faire attention aux dates car, en développement informatique, cela va très vite et les infos sont vites périmées. Typiquement ici, l'article parle du build.gradle alors que tu es parti sur la nouvelle structure en gradle.kts.
Tu trouveras plus d'infos sur cette nouvelle structure ici: https://developer.android.com/build/migrate-to-kotlin-dsl?hl=fr
Bonsoir BunoCS,
Merci pour ce nouveau lien que je vais consulter.
C'est vrai Android Studio est en constante évolution (en grand V).
Je me suis intéressé à coder pour Android en 2015, j'ai une appli de cette époque codée avec Android Studio, impossible de la relancer avec les nouvelles versions Android studio.
https://android-arsenal.com/search?q=chart
J'ai consulté ce lien hier soir d'où j'ai retenu un graphique à barres mais il date de 2017-mis à jour 2018. Son Nom ChartProgressBar 247 7 46 16.
Vu la date il faudrait que je mon choix se porte sur plus récent.
Effectivement il y est indiqué (ajouter à votre build.gradle)
Mon Android Studio de version actuelle est Ladybug Feature Drop | 2024.2.2 Patch 2.
Je viens de trouver deux graphiques plus récents, ils sont codés en Kotlin, moi j'utilise java, que faire?
J'ai poursuivi mes recherches toutes les applis récentes sont codées en Kotlin !
Je continu mes recherches, merci pour tout est à +++
Très cordialement
Rapidegoyes
Bonsoir BunoCS,
Merci pour cette précision, ça me rassure, je vais m'y lancer.
A+++
Très cordialement
rapidegoyes
Bonsoir BunoCS,
C'est bon j'ai réussi à importer le module simpleandroidbarchart, téléchargé d'après ton lien.
Il me subsiste une erreur que je n'arrive pas à trouver. Comme il est codé en Kotlin; j'ai dû installer son plugin. Après avoir configuré le buildGradle, il me reste l'erreur suivante:
Caused by: org.gradle.internal.metaobject.
AbstractDynamicObject$CustomMessageMissingMethodException:
Could not find method compileSdkVersion() for arguments [35]
on project ':simpleandroidbarchart' of type org.gradle.api.Project.
Mon BuidGradle file:
plugins { id 'com.android.library' alias(libs.plugins.kotlin.android) id 'kotlin-android' // id 'kotlin-android-extensions' } android { namespace = "com.boyzdroizy.simpleandroidbarchart" buildFeatures { viewBinding = true } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } compileSdk 35 buildToolsVersion '35.0.0' } compileSdkVersion 35 buildToolsVersion "35.0.0" defaultConfig { minSdkVersion 23 targetSdkVersion 35 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } dependencies { implementation libs.kotlin.stdlib implementation libs.core.ktx implementation libs.appcompat implementation libs.material.v121 implementation libs.constraintlayout testImplementation libs.junit androidTestImplementation libs.ext.junit androidTestImplementation libs.espresso.core }
J'ai tout essayé, je n'y arrive pas!
Merci très cordialement
à+++ rapidegoyes.
Bonsoir,
J'ai oublié de signaler qu'il y a une erreur au niveau d'un import comme suit:
le mot android n'est pas reconnu il apparaît en rouge !
import kotlinx.android.synthetic.main.bar_chart.view.*
Merci pour toute aide
a +++ cordialement
rapidegoyes
Les extensions android kotlin sont obsolètes, il faut migrer vers jetpack: https://developer.android.com/topic/libraries/view-binding/migration?hl=fr#:%7E:text=Kotlin%20Android%20Extensions%20is%20deprecated,migrate%20to%20Jetpack%20view%20binding.
Hello,
J'ai pris le temps de regarder l'intégration de la lib et je suis arrivé à dessiner un graphique en barre
Voici le projet d'exemple que j'ai créé, en espérant que cela t'aide:
https://github.com/BrunoAndroidDev/SimpleBarChart
Bonsoir BunoCS,
Avant tout un grand merci de m'épauler et pour le temps que tu as consacré à cet exemple. Cela me redonne du baume au cœur !
Je viens de consulter tes fichiers et j'essaye de comprendre ce qui ne vas pas chez moi.
1)-- Au niveau du buildgradle.kts je constate que je n'ai pas la dépendance concernant l'import du projet fournit par le titulaire.
implementation(libs.boyzdroizy.simpleandroidbarchart)
2)-- Je n'utilise pas les Fragments pour coder, mon appli n'en contient pas.
J'en déduit que mon problème est que je m'y prend mal pour inclure le module au sein de mon appli. Si éventuellement tu pourrai m'aider au niveau de cette procédure.
J'ouvre File---Project Structure--Module--+
Ensuite--Dependencies--+ et là je dois avoir quelques problèmes car je n'ai pas l'implementation ci-dessus.Je vais réessayer après tout je ne casse rien !
Encore un grand merci très cordialement et à +++
rapidegoyes
Voici les étapes que j'ai faites.
Dans le fichier settings.gradle.kts, j'ai ajouté le repository
maven {
url = uri("https://jitpack.io")
}
Ensuite, dans app/build.gradle.kts, j'ai ajouté, dans les dependancies:
implementation (com.github.BoyzDroizy:SimpleAndroidBarChart:1.0.1)
Après une synchronisation Gradle, Android Studio a fait quelques modifs pour avoir plutôt
implementation(libs.boyzdroizy.simpleandroidbarchart)
La version de la lib se trouve maintenant dans un fichier libs.version.toml
[versions]
agp = "8.9.0"
junit = "4.13.2"
junitVersion = "1.1.5"
espressoCore = "3.5.1"
appcompat = "1.6.1"
material = "1.10.0"
constraintlayout = "2.1.4"
navigationFragment = "2.6.0"
navigationUi = "2.6.0"
simpleandroidbarchart = "1.0.1"
[libraries]
boyzdroizy-simpleandroidbarchart = { module = "com.github.BoyzDroizy:SimpleAndroidBarChart", version.ref = "simpleandroidbarchart" }
junit = { group = "junit", name = "junit", version.ref = "junit" }
ext-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
material = { group = "com.google.android.material", name = "material", version.ref = "material" }
constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" }
navigation-fragment = { group = "androidx.navigation", name = "navigation-fragment", version.ref = "navigationFragment" }
navigation-ui = { group = "androidx.navigation", name = "navigation-ui", version.ref = "navigationUi" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
Bonsoir BunnoCS,
Merci pour ton aide, j'ai vraiment essayé mais là cela dépasse mes compétences et j'ai décidé d'en arrêter là!!!.
A fur et à mesure de rectifier j'ai toujours les mêmes erreurs Références non résolues.
Je penses qu'il faudrait se reconvertir en codage Kotlin, ce que je n'ai pas envie de faire à 85 au jus !!!
Très cordialement et à+++ pour la suite concernant mes bricolages.
rapidegoyes ou no
Très cordialement