...
In eerste opslag leek Graphstream ons een goed idee omdat het gepromote werd als een realtime grafiek. Maar na dieper hierop in te hebben gekeken bleek het niet de juiste soort grafieken te hebben. De grafieken die je kan maken met Graphstream zijn voornamelijk bedoeld voor het inkaart brengen van bijvoorbeeld wikipediapagina's en hoe die met elkaar verbonden zijn.
Hierdoor
hebben wij de keuze gemaakt om onze aandacht te foccusen op andere API's die wel de nodige grafieken bezittenDoordat de API niet de nodige grafieken bevat die wij nodig hebben voor de applicatie van de opdrachtgever, zijn wij tot de conclusie gekomen om deze API niet verder te onderzoeken.
Google charts:
Google charts een een open API die gemaakt is door Google. Doordat het door zo'n groot bedrijf is gemaakt is de support en mogelijke oplossingen voor vragen zeer groot. Een nadeel van Google charts is dat het alleen te gebruiken is op een webpagina en niet in een Java applicatie. Er was wel een implementatie voor Java maar die is het laatst geüpdatet 14 jaar geleden, wij hebben er voor gekozen om deze dan daarom ook niet te gebruiken.
...
| Implementeerbaarheid | Documentatie | Prototype | Prestatie | Uitbreidbaarheid |
---|
Voordelen | - Gemakkelijke te gebruiken als je er bekend mee bent. Je hebt standaard templates die je kan gebruiken. Enige wat je hoeft te doen is een json met de waardes meegeven.
| - Uitgebreide documentatie van Google zelf en andere online forums.
| - Een prototype heb je snel opgezet, ook doormiddel van de sterke documentatie
- Het prototype voldoet aan alle eisen:
- grafieken kunnen in realtime 20x per seconden geupdate worden.
- Er zijn veel verschillende grafieken zoals cirkel-, donuts-, lijn- en metergrafieken
| - Voldoet aan de 20x per seconden updaten en blijft consistent.
|
|
---|
Nadelen | - De API heeft een erg stijl leerproces doordat je ook moet weten hoe JavaScript in elkaar zit.
- Voor elke grafiek die je maakt moet je opnieuw een javascript maken.
|
|
|
| - Kan niet uitbreiden omdat alles op de namen van de grafiek eenheden vast staan in de API
|
---|
Graphstream:
...
...
JFreeChart:
| Implementeerbaarheid | Documentatie | Prototype | Prestatie | Uitbreidbaarheid |
---|
Voordelen | - Makkelijk te implementeren, er hoeft alleen maar een nieuwe dependency toegevoegd te worden.
- De interfaces en classes die de API met zich mee brengen, hebben duidelijke namen
- Met relatief weinig voorbeelden en opzoeken is het toch erg makkelijk om nieuwe grafieken te maken.
| - Veel documentatie online te vinden op StackOverflow en andere online fora.
| - Prototype is makkelijk in elkaar te zetten, onder andere door de hoeveelheid documentatie.
- Het prototype voldoet aan alle eisen die gesteld zijn door de opdrachtgever:
- De grafieken kunnen real-time twintig keer per seconde aangepast worden;
- Er zijn meerdere grafieken, zoals cirkeldiagrammen, lijngrafieken en staafdiagrammen mogelijk om te maken.
- De kleuren van de grafieken kunnen aangepast worden naar de bedrijfskleuren van Regterschot Racing.
| - Snel en consistent. Na het uitvoeren van de code, is de grafiek meteen bezig.
- De grafiek kan met gemak twintig keer per seconde nieuwe data laten zien.
| - Makkelijk om nieuwe grafieken te maken door de grote hoeveelheid interfaces en klassen.
|
---|
Nadelen | - Niet makkelijk om grafieken op een webapplicatie weer te geven, dit is niet gelukt in het prototype. De API is bedoeld om een applicatie te maken en niet om de grafieken en diagrammen op een webpagina weer te geven.
- Het maken van een enkele grafiek vereist een grote hoeveelheid code:
- Het veranderen van kleuren, achtergronden en stijlen kost per aanpassing één regel aan code.
| - Documentatie van JGraphFree zelf kost geld en is meer dan 750 pagina's.
- De meeste documentatie van fora gaat over statische grafieken en dus niet over dynamische grafieken.
| - Door de hoeveelheid code die vereist is, duurt het lang om te weten of hetgeen dat getest wordt daadwerkelijk werkt.
- De real-time grafieken zijn best lastig om in elkaar te zetten door de run en update methodes die nodig zijn.
| - De grafiek is meteen bezig na het runnen, waardoor oudere machines wellicht het begin van de grafiek missen.
- Als er snel nieuwe data getoond wordt, is het moeilijk de lijn of staaf in de grafiek te volgen.
| - Elke nieuwe grafiek die gemaakt moet met relatief veel code worden toegevoegd.
|
---|
...