Ga naar inhoud
  • 0

.


Felix

Vraag

10 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Jazeker.

 

Het leuke van zo'n oplossing is dat je het ook interactief kunt maken: je klikt op een taartpunt en het systeem draait een scriptje.

 

Maar het is een hoop uitzoekwerk. Er zou eigenlijk een setje custom functies moeten zijn die een lijst met getallen omzet in een grafiekje, d.w.z. die de benodigde SVG teruggeeft.

Link naar reactie
  • 0

Die eerste link bevat ook wat SVG voor de legenda.

 

Je kunt een stuk tekst overal plaatsen waar je wilt, alleen wel uitkijken: de volgorde van de SVG elementen bepaalt de 'stapeling'.

 

Dus als je labels bovenop de taartpunten wilt displayen, moet je ze als laatste in je data:url opnemen.

 

Leuke voorbeelden van wat met Javascript en SVG mogelijk is:

 

http://d3js.org

 

Gaat wel iets verder dan een pie-chart, maar met wat knippen en plakken kom je een aardig eind.

 

HE

Link naar reactie
  • 0

Wel zit ik in mijn maag met de scrollbalken die je krijgt te zien onder windows. Dit zal wel iets te maken hebben met het canvas, viewbox gedoe met pixels en percentages.

Een ander probleem is dat ik niets te zien krijg wanneer er maar 1 waarde is. Je zou dan een hele taart moeten krijgen met 100% maar die wordt onderweg al opgegeten. Misschien moet ik daar een special case van maken.

 

Inderdaad, als je de viewbox aanpast kun je de scrollbars laten verdwijnen. Een hoop gepuzzel, maar ik geloof dat de viewbox kleiner moet zijn dan de webviewer.

 

Wanneer er maar 1 waarde is, moet je misschien iets veranderen aan de parameters, of anders het taartpuntje niet 360 graden maken maar 359,99 of zoiets. En als laatste optie een circle ipv een Arc.

 

Maar een taartdiagram met maar 1 waarde is niet zo informatief, toch?

 

Het is een hoop gepriegel, maar de resultaten zijn er wel naar. Je kunt de verschillende onderdelen van een URL voorzien, zodat FileMaker weer wat doet als je erop klikt.

 

NB ik heb nog zitten denken aan een custom functie voor het aanmaken van de SVG, maar dat is nog niet zo simpel. Je hebt natuurlijk X datawaarden waarbij 'X' alles kan zijn tussen 1 en bijv. 8 ( bij meer dan 8 wordt de piechart een onoverzichtelijke verzameling kruimels :-)).

 

Dan zou je met recursion de statements moeten aanmaken, maar elk startpunt van een boog is het eindpunt van de vorige boog. Dat wordt wel erg ingewikkeld, ik ben daar niet zo goed in. Ik denk dat het beter is een custom functie te maken voor één taartpunt en dan in een script of een berekend veld die functie aan te roepen.

 

HE

Link naar reactie
  • 0

Nog even over die viewbox, je SVG declaratie bevat iets dergelijks:

viewBox="0,0,700,700" width="300" height="300"

 

In dit geval is de viewbox de ruimte in de webviewer die gebruikt wordt voor je graphic en de 'width' en 'height' geven de grootte van de graphic aan.

 

Als de width en height groter of gelijk zijn dan de viewbox, kan het zijn dat je graphic afgesneden wordt, want dan kunnen bepaalde elementen buiten de viewbox vallen.

 

Als de width en height kleiner zijn (zoals hierboven), zal de graphic verkleind worden weergegeven.

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...