Mon application nécessite une bibliothèque graphique et j'utilise la bibliothèque de graphiques AcharTengine. Mon application nécessite que le graphe ne soit que 50% de l'écran et une autre partie est utilisé pour afficher d'autres informations.
Est-il possible de disposer de fichier de ressources XML pour les API graphiques de AcharTengine et comment le faire?
J'ai essayé de trouver un exemple mais je ne l'ai pas trouvé. Est-il soutenu ou pas?
Ceci est un FAQ pour AcharTengine. L'application AcharTengine Demo est disponible pour le téléchargement ici: Demo AcharTengine
Dans le code source de démonstration, vous pouvez voir un exemple sur la manière d'intégrer un graphique dans une vue existante.
Fondamentalement, dans le fichier de descripteur d'activité .xml, nous avons défini ce qui suit comme un espace réservé pour le graphique. Bien sûr, d'autres composants d'interface utilisateur vont avec cette mise en page:
Chartdemo/mise en page/xy_chart.xml près de la ligne 27
<LinearLayout
Android:id="@+id/chart"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:orientation="horizontal" />
Nous définissons une variable locale:
CharttDemo/src/org.achartengine.chartdemo.demo.chart/xychaartbuilder.java près de la ligne 68
private GraphicalView mChartView;
Nous l'instancient sur la méthode OnResume () de l'activité:
CharttDemo/Src/org.achartengine.chartdemo.demo.chart/xychaartbuilder.java près de la ligne 163
protected void onResume() {
super.onResume();
if (mChartView == null) {
LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
mChartView = ChartFactory.getLineChartView(this, mDataset,
mRenderer);
layout.addView(mChartView, new LayoutParams
(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
...
} else {
mChartView.repaint();
}
}
Chaque fois que de nouvelles données sont ajoutées (lorsque l'utilisateur appuie sur le bouton "Ajouter" dans notre cas, un nouveau point est ajouté dans la série actuelle et:
CharttDemo/src/org.achartengine.chartdemo.demo.chart/xychatbuilder.java près de la ligne 147
if (mChartView != null) {
mChartView.repaint();
}
Il y a deux ensembles d'API dans ChartFactory
. Pour par exemple. getLineChartView()
et getLineChartIntent()
. Donc, l'ancien est utilisé pour obtenir une vue graphique pouvant être ajoutée à la disposition personnalisée et est utilisée ultérieurement pour obtenir l'intention. Dans l'exemple ci-dessus, Dan a utilisé getLineChartView()
API qui retourne un GraphicalView
.
Vous pouvez écrire votre XML comme celui-ci ...
<LinearLayout
Android:layout_below="@+id/btn"
Android:id="@+id/chart" Android:orientation="horizontal"
Android:layout_width="fill_parent" Android:layout_height="wrap_content"
Android:layout_weight="1">
</LinearLayout>
et le Java Code Snippet est
protected void onResume() {
super.onResume();
if (mChartView == null) {
LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
mChartView = ChartFactory.getBarChartView(this,getBarDemoDataset(values),renderer,Type.DEFAULT);
layout.addView(mChartView);
} else {
mChartView.repaint();
}
}
Donc, voici un endroit autonome pour trouver tout AcharTengine . Qui comprend le lien vers le téléchargement,
- aLARTENDINE-1.1.0-DEMO-SOURCE.ZIP Le code source du projet AcharTengine 1.1.0 Demo. 15 mai 15 mai 168 KB 8149
- acharTengine-1.1.0-javadocs.ZIP La documentation Javadoc 1.1.0 Javadoc. 15 mai 15 mai 374 KB 3610
- acharTengine-1.1.0.jar La bibliothèque de constructions binaires AcharTengine 1.1.0. 15 mai 15 mai 117 KB 5264
Qui sont les plus récents pour l'instant (lors de la publication de cette réponse). Suivez maintenant ces étapes faciles pour ajouter un nouveau fichier graphique:
Maintenant, cliquez avec le bouton droit sur le fichier et ajoutez-le au chemin de construction, comme dans l'image
Maintenant, comme définissez les réponses précédentes, ajoutez le code suivant à votre classe:
private GraphicalView mChartView;
private XYMultipleSeriesDataset dataset;
private XYMultipleSeriesRenderer renderer;
private BarChart.Type type;
protected void onResume() {
super.onResume();
if (mChartView == null) {
LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
/*getBarChartView(Android.content.Context context, XYMultipleSeriesDataset dataset, XYMultipleSeriesRenderer renderer, BarChart.Type type)
Creates a bar chart view.*/
mChartView = ChartFactory.getBarChartView(this, dataset, renderer, type);//tView(this,getBarDemoDataset(values),renderer,Type.DEFAULT);
layout.addView(mChartView);
} else {
mChartView.repaint();
}
}
Pour obtenir des détails sur n'importe quelle classe de AcharTengineapi, téléchargez AcharTengine-1.1.0-javadocs.zip et ouvert en cliquant sur Index .html
ALTRAGINE-1.1.0-DEMO-SOURCE.ZIP sera utile lors de nouveaux développements de développement pur où vous pouvez faire référence à tous les graphiques