Wat is er nieuw
De nieuwste @michi-vz-releases, nieuwste eerst. Alle zes pakketten - core, wc, react, vue, svelte, angular - worden samen geversioneerd (elke release vermeldt welk pakket vooruitliep). Volledige per-commit details staan in de GitHub releases.
v1.13.5
Package versions: core 1.34.0 · wc 1.23.0 · angular 1.20.0 · react 1.13.5 · vue, svelte 1.9.5 · examples 1.6.1 · devtools 0.3.7 · insights 0.2.42.
- Klik op de markering, niet op een link in de tooltip. Knopen en stromen van een Sankey melden
onNodeClick/onLinkClick, een bel van een BellendiagramonBubbleClick, en een symbool van een SymboolkaartonSymbolClick, in svg en via de canvas-hittest; de klik pint de tooltip nog steeds. De webcomponents sturenmichi-vz:nodeclick,michi-vz:linkclick,michi-vz:bubbleclickenmichi-vz:symbolclick. - Sankey-kolommen in jouw volgorde, dunne stromen die je kunt hoveren.
nodeSort: "input"houdt de opgegeven volgorde van knopen en links in een kolom aan, zodat een knoop "Rest van de wereld" onderaan blijft;minLinkValuegeeft een straaltje een minimale banddikte terwijl tooltips, context en totalen de echte waarden houden. - Sleep een bel. Met
draggablevolgt een bel de aanwijzer, wijken de buren, en bij het loslaten pakt de zwaartekracht van de wolk alles weer in. Slepen telt nooit als een klik. Op het webcomponent heet de propbubbleDraggable, omdatdraggablevan HTMLElement is. - Symbolen geplaatst vanuit de geografie. Een symboolkaart-item mag
lng/latweglaten als eengeography-feature zijngeoId(ofid) draagt: het wordt op het zwaartepunt van die feature getekend, zodat ISO-gecodeerde rijen geen coördinatentabel nodig hebben.labelFormatterbepaalt de tekst in een symbool. - Korte codes in kleine bellen. De
codevan een item in een Bellendiagram (een ISO-code bijvoorbeeld) wordt alleen in de bel getekend als het volledige label niet past; voorheen verving hij het label zodra hij was ingevuld.
v1.13.4
Pakketversies: core 1.33.0 · wc 1.22.0 · angular 1.19.0 · react 1.13.4 · vue, svelte 1.9.4 · examples 1.6.0 · devtools 0.3.6 · insights 0.2.41.
- Kaarten die hun indeling op elk scherm houden. Een Symboolkaart met
fit: "width"wordt één keer op zijn ontwerpmaat ingedeeld en schaalt mee met de pagina, zodat zeshoektegels niet verspringen als het venster van grootte verandert.
v1.13.3
Pakketversies: core 1.32.0 · wc 1.21.3 · angular 1.18.3 · react 1.13.3 · vue, svelte 1.9.3 · examples 1.5.0 · devtools 0.3.5 · insights 0.2.40.
- Zeshoektegels houden hun buren op volgorde. Met
honeycomb.placement: "geographic"gaat een tegel van de Symboolkaart die moet wijken omdat zijn cel bezet is naar de vrije cel die het dichtst bij zijn echte positie ligt, en buren die verkeerd om zouden lezen worden verwisseld.honeycomb.reserve: "all"houdt de indeling gelijk als de waarden veranderen, en de nieuwe optietilevan een marker zet een speld op een tegel, waar die ook staat.
v1.13.2
Pakketversies: core 1.31.2 · wc 1.21.2 · angular 1.18.2 · react 1.13.2 · vue, svelte 1.9.2 · examples 1.4.2 · devtools 0.3.4 · insights 0.2.39.
- Tooltips blijven leesbaar aan de rechterrand. Elke grafiek zet de tooltip nu links van de cursor als er rechts geen ruimte is, in de grafiek of in het venster. De treemap, het cirkeldiagram, de sankey en enkele andere grafieken deden dat niet, en een tooltip bij de rand kon ook tot een smalle kolom worden samengedrukt.
v1.13.1
Pakketversies: core 1.31.1 · wc 1.21.1 · angular 1.18.1 · react 1.13.1 · vue, svelte 1.9.1 · examples 1.4.1 · devtools 0.3.3 · insights 0.2.38.
- Negatieve waarden in het Verticale gestapelde staven. Negatieve waarden stapelen nu omlaag vanaf 0 en positieve omhoog, zoals de gestapelde kolommen van Highcharts; eerder werden ze zonder hoogte getekend. Grafieken met alleen positieve waarden blijven precies gelijk.
v1.13.0
Pakketversies: core 1.31.0 · wc 1.21.0 · angular 1.18.0 · react 1.13.0 · vue, svelte 1.9.0 · examples 1.4.0 · devtools 0.3.2 · insights 0.2.37.
- Standaardwaarden voor de hele app.
setMichiVzDefaultslegt het palet, het lettertype, de hoeken van balken en tegels en het uiterlijk van de tooltip één keer voor de hele app vast, zoalsHighcharts.setOptions. Een prop op een grafiek wint nog steeds. Elk frameworkpakket exporteert het, en svg, canvas en webgpu tekenen hetzelfde. - Overal afgeronde hoeken. De Treemap krijgt
tileRadius(standaard 1; canvastegels waren vierkant en komen nu overeen met svg), en vergelijkende staafdiagrammen ronden hun hoeken ook af in webgpu.
v1.12.8
Pakketversies: core 1.30.0 · wc 1.20.0 · angular 1.17.0 · react 1.12.8 · vue, svelte 1.8.8 · examples 1.3.0 · devtools 0.3.1 · insights 0.2.36.
- Een vulling en een laatste waarde voor het Lijndiagram.
areaFillvult het vlak onder elke lijn met de eigen kleur, vervagend van boven in de grafiek naar de basislijn (standaard van 0,5 naar 0;topOpacity,bottomOpacityenbaselinepassen dat aan).lastPointLabelzet de laatste waarde van elke reeks boven het laatste punt en houdt die binnen de grafiek; geef eenformattermee voor eenheden of verkorte getallen zoals "887k USD". Beide staan standaard uit, werken in svg en canvas en blijven in afbeeldingsexports. Een grafiek metrenderer="webgpu"tekent als canvas zolangareaFillaan staat.
v1.12.7
Pakketversies: core 1.29.0 · wc 1.19.0 · angular 1.16.0 · react 1.12.7 · vue, svelte 1.8.7 · examples 1.2.0 · devtools 0.3.0 · insights 0.2.35.
- Een eenvoudigere Fontein (Jet d'Eau). Elke straal is nu een steel tot een grote stip (de gewone waarde), een klokvormige fontein van de laagste tot de hoogste waarde, en kleine stippen, één per echte meting, binnen de fontein op hun precieze hoogte. Geef elk item
lowenhigh, ofsamples(dan magvalueweg: de middelste meting wordt gebruikt), enforecast: truevoor een verwachting, gestippeld getekend met een holle grote stip. De grafiekpagina begint met een leeswijzer en 16 alledaagse voorbeelden: woon-werkritten, levertijden, prijzen, slaap. - Lijnen die voor je tellen.
referenceLinestekent een lijn zoals "Tijd die ik reken: 45 min" en zet, metgoodSide, "17 van 20 binnen 45 min" onder elke straal.showValueLabelstoont de gewone waarde en de twee uitersten onder elke straal, in jouw woorden (endLabels,labels,sampleWord);yAxisTitlezegt welke kant beter is;readingGuidevoegt een leeswijzer van één regel toe die alleen de getekende tekens noemt.showRangeenshowSampleszetten de fontein en de kleine stippen uit, endriftlaat de top overhellen zoals de fontein van Genève in de wind (standaard uit). Hover, vastzetten en Escape werken hetzelfde in svg, canvas en WebGPU, en kleuren blijven staan als je een reeks uitzet. - Een fontein bijwerken vanaf 1.28.
style,frothLayers,bloomExponent,stemFraction,showDroplets,showMistendensityenleanop items worden genegeerd, elk met eenignored-option-waarschuwing. In TypeScript zijnvalueenspreadnu optioneel, entooltipFormatterkrijgt het item met zijn berekendevalue. De fontein ondersteunt nuisLoading,isNodataennoDataLabel, dus een legedataSettoont de melding dat er geen gegevens zijn. De React- en Vue-hosts van de fontein zijn standaard 900 × 480. seekzoekt eerst de periode.timeline().seek(2021)komt nu op de periode 2021 uit, of je datums nu getallen of strings zijn; een getal telt alleen als positie als geen periode past. Code die een positie meegaf die ook een periodewaarde is, zoalsseek(2)op maanden 1 tot 12, komt nu op die periode uit: gebruik de nieuweseekIndex(i)om op positie te gaan, zoals de ingebouwde scrubber doet.- Asdatums ten westen van UTC. Jaar- en maandlabels op assen staan niet langer een jaar of maand te vroeg voor kijkers in Amerika, op elke grafiek met een datumas.
- DevTools die meer zien.
<MichiVzDevtools />vindt nu grafieken die in dezelfde React-commit mounten en webcomponenten op de pagina. Nieuw tabblad Props, een Items-tabel met Highlight- en Disable-knoppen op basis van de eigen gegevens van elke grafiek, een SVG-inspector in het tabblad Hit-test, en een waarschuwing alshighlightItemsofdisabledItemsmeer dan 10 keer per seconde terugkaatsen.
v1.12.6
Pakketversies: core 1.28.0 · wc 1.18.0 · angular 1.15.6 · react 1.12.6 · vue, svelte 1.8.6 · examples 1.1.19 · devtools, insights 0.2.34.
- Een ronde buitenring voor Radardiagram.
niceMaxValuerondt de buitenring af naar een rond getal alsmaxValueniet is ingesteld: de laatste "mooie" tick van [0, de grootste waarde], met dezelfde stappen van 1/2/5 × 10ⁿ als d3-assen, zodat het buitenste label 80 toont in plaats van 73.truegebruiktringsals aantal ticks en een getal stelt het in. Een explicietemaxValuewint altijd. De afronding is ook geëxporteerd alsniceRadarMax(dataMax, tickCount), voor wie een vaste ring wil terwijl reeksen in de legenda worden verborgen.@michi-vz/wcneemt het als property en@michi-vz/angulargeeft het door. - Paletten met een naam voor Choroplethenkaart en elders.
sequentialScheme(name, count)geeft de sequentiële ColorBrewer-paletten met één tint - blues, greens, greys, oranges, purples, reds - met 3 tot 9 kleuren (begrensd), dezelfde lijsten als d3-scale-chromatic, zodat eencolorScale.rangegeen d3 meer nodig heeft.SEQUENTIAL_SCHEME_NAMESsomt de namen op.
v1.12.5
Pakketversies: core 1.27.0 · wc 1.17.0 · angular 1.15.5 · react 1.12.5 · vue, svelte 1.8.5 · examples 1.1.18 · devtools, insights 0.2.33.
- Overlappende vlakken voor Vlakdiagram.
stacked: falsetekent elke reeks van nul tot haar eigen waarde in plaats van haar op de vorige te stapelen: een doorschijnende vulling met een lijn langs de bovenrand, in svg, canvas en WebGPU. Gebruik het voor reeksen die niet optellen - aandelen, percentages, indexen - waar de bovenrand van een stapel een totaal zou tonen dat niets betekent. De y-as loopt tot de grootste afzonderlijke waarde, grotere vlakken worden eerst getekend zodat kleinere zichtbaar blijven, en hover kiest de reeks waarvan de bovenrand het dichtst bij de aanwijzer ligt.stackOffset: "expand"wordt ermee genegeerd en gemeld als eenignored-option-datawaarschuwing. De standaard blijfttrue.@michi-vz/wcneemt het als property en@michi-vz/angulargeeft het door. - Nadruk bij hover voor Sankey. Met
hoverHighlightbrengt hoveren over een knoop die knoop naar voren, samen met elke stroom erin of eruit en de knopen aan hun andere uiteinde; hoveren over een stroom brengt die stroom en zijn twee knopen naar voren. Al het andere dimt tot het niveau dathighlightItemsgebruikt. In svg worden de markeringen ter plekke bijgewerkt, zodat het element onder de aanwijzer nooit wordt vervangen. Weggaan herstelt de normale toestand, en een vastgezette tooltip houdt zijn nadruk tot hij wordt losgemaakt. Standaard uit.@michi-vz/wcaccepteert eenhover-highlight-attribuut en@michi-vz/angulargeeft de prop door. Met de WebGPU-renderer toont hoveren over een stroom nu ook zijn tooltip. - Links van de Radiale boom in svg zijn dunne grijze lijnen, zoals in canvas. De linkpaden hadden geen vulling, dus de browser vulde elke spaak zwart en de boom verscheen als donkere wiggen.
v1.12.4
Pakketversies: core 1.26.0 · wc 1.16.0 · angular 1.15.4 · react 1.12.4 · vue, svelte 1.8.4 · examples 1.1.17 · devtools, insights 0.2.32.
- Hoekradius voor Vergelijkbare staven en Vergelijkbare verticale staven.
barRadiusstelt de hoekradius van elke balk in px in. De standaard blijft 5, dus er verandert niets zolang je hem niet instelt;0geeft vierkante hoeken, 2-4 bijna vierkante. Dat telt op kleine schermen, waar gegroepeerde halve banden en smalle kolommen maar een paar px dik zijn en een radius van 5px er pillen van maakt. De getekende radius is nooit groter dan de helft van de breedte of hoogte van de balk, en svg begrenst hem nu precies zoals canvas - voorheen liet svg de browser rx en ry apart begrenzen, waardoor balken dunner dan 10px licht elliptische hoeken kregen. De experimentele WebGPU-renderer tekent nog steeds vierkante hoeken.@michi-vz/wcaccepteert eenbar-radius-attribuut en@michi-vz/angulargeeft de prop door.
v1.12.3
Pakketversies: core 1.25.0 · wc 1.15.0 · angular 1.15.3 · react 1.12.3 · vue, svelte 1.8.3 · examples 1.1.16 · devtools, insights 0.2.31.
- Meter (ringen): annotaties antwoorden zelf.
annotationTooltipFormattergeeft de waardemarker, elk referentiestreepje en elk uiteinde een eigen aflezing bij hover, zodat korte labels op de boog kort kunnen blijven. Een annotatie hoveren laat de actieve ring met rust - de centrale aflezing beweegt niet - ennullteruggeven toont niets voor die annotatie. Het leest de geometrie op hostniveau in plaats van de DOM, dus het gedraagt zich hetzelfde in de svg-, canvas- en WebGPU-renderer, en een ring zonder waarde houdt de streepjes en uiteinden van zijn schaal hoverbaar.@michi-vz/wcen@michi-vz/angulargeven de prop door.
v1.12.2
Pakketversies: core 1.24.0 · wc 1.14.3 · angular 1.15.2 · react 1.12.2 · vue, svelte 1.8.2 · examples 1.1.15 · devtools, insights 0.2.30.
- Meter (ringen): positie binnen een bereik. Vijf additieve props:
minlaat de schaal ergens anders dan bij nul beginnen (ringwaarden en streepjes worden in[min, max]geklemd met een datawaarschuwing),valueMarkerzet de waarde van elke ring vast op de boog met een wit omrande cirkel en een radiaal streepje,ticksvoegt referentiestreepjes toe op de buitenste ring met een door de consumer opgemaakt bijschrift en waarde (valueFormatteris alleen de terugval),endLabelsbenoemt de twee uiteinden van een gedeeltelijke boog, ensweepFitpast een gedeeltelijke meter in het omhullende vak van zijn boog en verankert de centrale aflezing binnen de boog. De annotaties zijn svg in elke renderer - een overlay boven de geschilderde laag in canvas- en WebGPU-modus - dus consumer-CSS bereikt ze overal en svg- en PNG-exports nemen ze mee. De meter slaat zijn steigerwerk nu over volgens de gedeelde laden-zonder-data-regel zoals de andere grafieken, en de context geeftmindoor.@michi-vz/wcen@michi-vz/angularsturen de props door;@michi-vz/angular/gauge-chartexporteertGaugeTick,GaugeEndLabelenGaugeValueMarkeropnieuw.
v1.12.1
Pakketversies: core 1.23.0 · wc 1.14.2 · angular 1.15.1 · react 1.12.1 · vue, svelte 1.8.1 · examples 1.1.14 · devtools, insights 0.2.29.
sweepAngleengradientop de Meter (ringen).sweepAngle(in graden, met de klok mee vanafstartAngle, standaard 360) verkleint de meter van een volledige cirkel tot een gedeeltelijke boog -startAngle: -90, sweepAngle: 180geeft de klassieke halve meter. Zowel het achtergrondspoor als de waardeboog van elke ring bestrijken dezelfde gedeeltelijke boog, en de waarde van een ring wordt tegen dat bereik gemeten, niet tegen een volledige cirkel; een niet-ingestelde, nul of negatieve waarde valt terug op een volledige cirkel van 360°, geen lege meter.gradient(eenstring[]op het diagram, of per ring op de ringdata, die wint) tekent de boog van een ring met een lineair meerkleurig verloop dat verankerd is aan de volledige boogbreedte in plaats van het getekende deel, zodat eenzelfde kleur altijd op dezelfde waarde blijft staan. Alle drie de renderers respecteren beide props, en@michi-vz/wcen@michi-vz/angulargeven ze door.
v1.12.0
Pakketversies: core 1.22.0 · wc 1.14.1 · angular 1.15.0 · react 1.12.0 · vue, svelte 1.8.0 · examples 1.1.13 · devtools, insights 0.2.28.
- Per-grafiek sub-path imports voor
@michi-vz/angular,@michi-vz/react,@michi-vz/vueen@michi-vz/svelte, naar het voorbeeld van@michi-vz/wc: importeer@michi-vz/<pakket>/<grafiek-sleutel>(kebab-case) om maar één grafiek binnen te halen in plaats van de barrel, bijv.@michi-vz/angular/radar-chart. De kale barrel werkt nog steeds en registreert nog steeds elke grafiek - puur additief. Zie Eén grafiek importeren. - Hover op de Radardiagram: de gehoverde pool wordt nu ook op de SVG-renderer bepaald, net als bij canvas en WebGPU:
tooltipFormatterkrijgtdate(het aslabel van de gehoverde pool) op elke renderer, hover volgt de cursor in plaats van eenmalig te vuren bij binnenkomst, en gedempte series worden niet meer gehittest. Let op als jouw codeonHighlightItemterugvoert naarhighlightItems: als een serie geometrisch genest zit in een andere (typisch een eerder jaar, lager op elke as), dempt het hoveren van de buitenste serie de binnenste, en omdat gedempte series niet gehittest worden, is de binnenste niet meer te hoveren totdat de cursor de buitenste serie volledig verlaat.
v1.11.12
Pakketversies: core 1.21.0 · wc, angular 1.14.0 · react 1.11.12 · vue, svelte 1.7.12 · examples 1.1.12 · devtools, insights 0.2.27.
- Zeshoekige tegels op de Symboolkaart:
shape: "hexagon"pluspositionMode: "honeycomb"maken van de symboolkaart een tegelkaart - even grote zeshoeken op een zeshoekig rooster (deterministische botsingsafhandeling,layout-overflow-waarschuwing), de waarde in eencolorScalemetnoDataColorvoor items zondervalue,offset-verschuivingen per item, decoratievemarkers-spelden en de projectiegeoNaturalEarth1. De context vermeldtx/y,hasValue,noValueCount,shape,positionMode,colorScaleenmarkers.
v1.11.11
Pakketversies: core 1.20.1 · wc 1.13.1 · angular 1.13.0 · react 1.11.11 · vue, svelte 1.7.11 · examples 1.1.11 · devtools, insights 0.2.26.
- Gedeelde tooltip op het SVG-Lijndiagram:
sharedTooltip(één tooltip met elke reeks bij het aangewezen jaar, met vastpinnen bij klik) werkt nu ook op de standaard SVG-renderer; het gold alleen voor canvas/WebGPU, waardoor een SVG-diagram stilzwijgend terugviel op de tooltip per lijn. - Angular-types:
@michi-vz/angularexporteertDataPoint,LineDataItem,Margin,Filter,CurveType,XaxisDataType,MouseLineConfigenSinglePointLineConfigopnieuw.
v1.11.10
Pakketversies: core 1.20.0 · wc 1.13.0 · angular 1.12.9 · react 1.11.10 · vue, svelte 1.7.10 · examples 1.1.10 · devtools, insights 0.2.25.
- Tegelklikken op het Treemap: een nieuwe callback
onTileClick(leaf, event)meldt de aangeklikte bladtegel (dezelfde context die de tooltip-formatter ontvangt) op de SVG-, canvas- en WebGPU-renderers; het webcomponent verzendt dit alsmichi-vz:tileclick. Klikken pint de tooltip nog steeds vast.
v1.11.9
Pakketversies: core 1.19.1 · wc, angular 1.12.8 · react 1.11.9 · vue, svelte 1.7.9 · examples 1.1.9 · devtools, insights 0.2.24.
- Gebogen overbruggingen van ontbrekende data in het Lijndiagram: gestippelde gap-segmenten volgen nu dezelfde curve als de doorgetrokken lijn eromheen, in plaats van als rechte bruggen te renderen.
- Draadkruis boven canvas-markeringen: bij canvas/WebGPU-lijn- en vlakdiagrammen blijft de hoverlijn zichtbaar boven de geschilderde markeringen.
v1.11.8
Pakketversies: core 1.19.0 · wc, angular 1.12.7 · react 1.11.8 · vue, svelte 1.7.8 · examples 1.1.8 · devtools, insights 0.2.23.
- Meerregelige titel voor de groottelegenda van het Spreidingsdiagram:
dScaleLegend.titleaccepteert nu ook een array van strings, weergegeven als gestapelde regels boven de groottebogen: lange vertaalde titels lopen niet meer voorbij de rechterrand van het diagram.
v1.11.7
Pakketversies: core 1.18.0 · wc, angular 1.12.6 · react 1.11.7 · vue, svelte 1.7.7 · examples 1.1.7 · devtools, insights 0.2.22.
- Geen lege-toestand-assen meer: diagrammen slaan assen en markeringen over tijdens het laden zonder iets om te tekenen, en het Verschildiagram en het Spreidingsdiagram respecteren nu
isLoading/isNodata(overlays +data-mv-state) in plaats van een ingeklapte, gecentreerde as te tekenen bij lege data. Een refetch met nog zichtbare data behoudt zijn assen. Nieuwe core-exports:isEmptyDataSet,shouldSkipScaffold.
v1.11.6
Pakketversies: core 1.17.0 · wc, angular 1.12.5 · react 1.11.6 · vue, svelte 1.7.6 · examples 1.1.6 · devtools, insights 0.2.21.
- Gedeeltelijke
yAxisDomainop het Lijndiagram: elke grens mag nunullzijn om alleen die grens uit de data af te leiden.[0, null]pint de basislijn op 0 terwijl het maximum de zichtbare reeksen blijft volgen - het schaalt mee met legenda-toggles en Top/Bottom-N-selecties, precies zoals het volledig afgeleide domein. Een afgeleide grens kruist nooit een vastgezette grens (volledig negatieve data onder[0, null]levert[0, 0]op in plaats van een omgekeerde as). Een gewone[min, max]met getallen gedraagt zich als voorheen.
v1.11.5
Pakketversies: core 1.16.2 · wc, angular 1.12.4 · react 1.11.5 · vue, svelte 1.7.5 · examples 1.1.5 · devtools, insights 0.2.20.
- Uitgeschakelde legenda-items behouden hun plek op het spreidingsdiagram, het halterdiagram en het vlakdiagram. Hun legenda's werden afgeleid van de al gefilterde data: een aangeklikt (uitgeschakeld) label verdween uit
legendDataen consumer-fallbacks voegden het achteraan de legenda weer toe. Alle drie houden het label nu gemarkeerd alsdisabled: trueop zijn oorspronkelijke plek, hetzelfde contract als de legenda's van het gestapelde staafdiagram (core 1.5.6) en de vergelijkbare balk (core 1.12.2). De scatter-context krijgt ook eenseries-samenvatting per label (label/code/last) uit de rijen van vóór het filteren, zodat een verborgen label zijn nieuwste waarde behoudt voor legenda-sortering aan consumer-zijde. contextSignatureblijft begrensd met het nieuweseries-veld: het gaat door dezelfde hash als rijen en legenda in plaats van geserialiseerd te worden, zodat de signature van een scatter met 50k punten enkele honderden bytes blijft.
v1.11.4
Pakketversies: core 1.16.1 · wc, angular 1.12.3 · react 1.11.4 · vue, svelte 1.7.4 · examples 1.1.4 · devtools, insights 0.2.19.
- Top/Bottom-rangschikking slaat series zonder data op de ankerdatum over. Op de lijngrafiek rangschikt een serie zonder eindige waarde op het
filter.date-anker nu als LAATSTE in beide sorteerrichtingen. De oude sentinel sorteerde alleen onderdescals laatste — onderasc(Bottom-N) sorteerde ze eerst, waardoor Bottom-N zijn plekken vulde met series zonder data in het ankerjaar in plaats van de laagste echte waarden. Een rij die op het anker bestaat maarnull/NaNbevat, telt ook als ontbrekend. - Ticks op de datum-as kunnen de getekende lijnen niet meer voorbijschieten. De periode-tick-kandidaten van de lijngrafiek (en de "aanwezig"-set van
fillPeriodTicks) komen nu uit dezelfde gerangschikte/gesneden/doordisabledItemsgefilterde set als het x-domein. Voorheen schilderde een uit de rangschikking gevallen poolserie met een latere periode dan enige getekende serie een tick voorbij de plotrand, met een leeg stuk as na de laatste lijn.
v1.11.3
Pakketversies: core 1.16.0 · wc, angular 1.12.2 · react 1.11.3 · vue, svelte 1.7.3 · examples 1.1.3 · devtools, insights 0.2.18.
- Een gerangschikte serie verbergen vult niet langer op. Op de lijngrafiek, de vergelijkbare horizontale balk en de vergelijkbare verticale balk rangschikt en snijdt het Top/Bottom-
filternu de VOLLEDIGE set voordatdisabledItemsworden verwijderd — een van de top-N series verbergen via de legenda tekent dus N−1 series in plaats van de (N+1)-de in het vrijgekomen slot te laten schuiven (de volgorde die de gap-grafiek en de groepsselectie van de stapelbalk altijd al gebruikten). Zolang eenfilteractief is, houdtlegendDatade verborgen serie als gedimde rij en vermeldtrenderedRankedIdsnog steeds haar code, zodat een consumerende selectie-UI stabiel blijft over toon/verberg-wissels. Zonderfilterverandert er niets.
v1.11.2
Pakketversies: core 1.15.0 · wc, angular 1.12.1 · react 1.11.2 · vue, svelte 1.7.2 · examples 1.1.2 · devtools, insights 0.2.17.
- De context vertelt nu wat er echt op het scherm staat. Nieuw veld
renderedRankedIdsop de gedeelde ChartContext: de codes van de daadwerkelijk getekende reeksen, in tekenvolgorde (nadisabledItemsen het sorteren/afkappen van de Top/Bottom-filter), uitgezonden door de builders van Lijndiagram, Verticale gestapelde staven, Vergelijkbare staven, Vergelijkbare verticale staven en Verschildiagram. Decodeper reeks staat nu ook op de stack- en comparable-bar-contexten, en numerieke codes worden niet langer genegeerd door de gestapelde staafgrafiek. Hiermee kan een selectie-UI een gerangschikte grafiek volgen (het "Top-N chips"-patroon).
v1.11.1
Pakketversies: core 1.14.0 · wc, angular 1.12.0 · react 1.11.1 · vue, svelte 1.7.1 · examples 1.1.1 · devtools, insights 0.2.16.
- De verticale stapelbalk kan nu liggend. Nieuwe additieve
layout: "horizontal": rijen op een band-y-as (de gedeelde HTML-labels met ellips, dus lange categorienamen blijven leesbaar) met gestapelde segmenten die vanaf x(0) naar rechts groeien. Data-, kleurslot-, legenda-, tooltip- en missing-marker- contracten zijn identiek aan de verticale lay-out, en dexAxis*-props blijven de categorie-as formatteren (yAxis*/yTicksde waarde-as) in beide oriëntaties. Afkortingslabels,xAxisModeentimelineblijven alleen verticaal.
v1.11.0
Pakketversies: react, wc, angular 1.11.0 · core 1.13.0 · vue, svelte 1.7.0 · examples 1.1.0 · devtools, insights 0.2.15.
- Nieuwe grafiek: Meter (ringen). Een concentrische ringmeter - één ring per item, van buiten naar binnen, die elk
value/maxvan een volledige cirkel over een achtergrondspoor bestrijkt. Aanwijzen activeert een ring en stuurt de ingebouwde centrale aflezing; eennull-waarde toont alleen het spoor. Ringdikte en -afstand, kleuren en dekkingen per ring, beginhoek, afgeronde uiteinden en de centrale inhoud zijn configureerbaar, met svg-, canvas- en webgpu-renderers die het standaard kleurprobe-contract delen. - Sleep-zoom op de lijngrafiek. Zet de
zoom-prop aan: sleep een horizontaal bereik in het tekengebied om het x-domein te zoomen (een selectiekader toont het vooraf), met een ingebouwde "Reset zoom"-knop,minRange, eenonZoomChange-callback enresetZoom()/setZoomDomain()voor programmatische besturing. Markeringen worden op het tekengebied bijgesneden; ticks, dradenkruis en tooltips volgen het gezoomde domein. - PNG-exports kunnen een titel en een bronregel dragen.
chartToPngDataUrlaccepteerttitle- encaption-tekstblokken (automatische regelafbreking, uitlijning/grootte/kleur configureerbaar) boven en onder de grafiek.
v1.10.4
Pakketversies: react, wc, angular 1.10.4 · core 1.12.2 · vue, svelte 1.6.6 · devtools, insights 0.2.14.
- Legenda's van vergelijkbare staven schudden niet meer door elkaar bij het uitschakelen van een item. Op de Vergelijkbare staven en Vergelijkbare verticale staven verdween een label uit
disabledItemsvolledig uit de uitgezondenlegendData, waardoor legenda's die daarop bouwen het item elders opnieuw toevoegden - een zichtbare hersortering (en soms een andere kleur) bij elke klik op de legenda. Een uitgeschakeld label blijft nu inlegendDatastaan, gemarkeerd alsdisabled: true, op zijn oorspronkelijke plek; de staven zelf laten het nog steeds weg. Dit komt overeen met het contract dat de verticale stapelstaaf sinds core 1.5.6 heeft.
v1.10.3
Pakketversies: react, wc, angular 1.10.3 · core 1.12.1 · vue, svelte 1.6.5 · devtools, insights 0.2.13.
- Geen zwevende "Chart"-tooltip meer. Elke grafiek injecteerde een svg
<title>met "Chart" als SEO-fallback, en browsers tonen een svg<title>op rootniveau als native hover-tooltip - waar je ook over een grafiek zweefde, er verscheen een klein "Chart"-label. Het element wordt nu alleen nog geïnjecteerd als je zelf eentitle-prop zet; crawlers behouden de JSON-LD-metadata, en schermlezers merken niets (de svg isaria-hidden, de verborgen a11y-tabel blijft hun representatie). - Tooltips van het Lijndiagram kennen hun reeks weer. Het punt dat aan
tooltipFormatterwordt doorgegeven draagt opnieuw hetlabelvan zijn reeks ({ ...point, label }), zoals in de bibliotheek van vóór de monorepo. Tooltips die de reeksnaam uitpoint.labeltonen, lieten die regel sinds de migratie leeg.
v1.10.2
Pakketversies: react, wc, angular 1.10.2 · core 1.12.0 · vue, svelte 1.6.4 · devtools, insights 0.2.12.
- Een drukke datumas kantelt zijn labels nu in plaats van de meeste weg te laten. Alle grafieken met een bandas (Verticale gestapelde staven, Vergelijkbare verticale staven, Fontein, Lintdiagram, Spreidingsdiagram) gaven de rotatie op zodra de banden smal werden en legden een uitgedunde set labels plat neer. Een gekanteld label heeft alleen zijn diagonale ruimte nodig, ongeveer een kwart van wat een plat label vraagt, dus wordt nu een uitgedunde set gekanteld en blijven er ongeveer drie keer zoveel labels over. Er wordt alleen gekanteld als dat werkelijk labels oplevert.
xAxisMode: "horizontal"dwingt nog steeds platte labels af. - Opgelost: uitgedunde labels konden over elkaar heen worden getekend. De uitdunning garandeerde HOEVEEL labels bleven staan, maar nooit hoe ver ze uit elkaar lagen, en kon dus twee naburige banden kiezen. Overlap wordt nu exact gemeten - de eigen breedte van elk paar bij platte labels, de loodrechte afstand bij gekantelde - en botsende labels vervallen. Het eerste en het laatste label blijven altijd staan, zodat de as zijn volledige bereik toont.
YYYYMM-categorieën volgen de kalender. Een maandas landt op echte ankerpunten (elke januari, jan/jul, jan/apr/jul/okt) in plaats van waar de decimale afronding toevallig uitkwam. Diezelfde afronding veroorzaakte de overlap hierboven: ze is betekenisloos over een maandveld in twaalftallen en zette twee ticks aan weerszijden van elke jaarwisseling. Viercijferige jaren blijven ongewijzigd, ronde decennia passen daar al bij.
v1.10.1
Pakketversies: react, wc, angular 1.10.1 · core 1.11.1 · vue, svelte 1.6.3 · devtools, insights 0.2.11.
- Opgelost: in Verticale gestapelde staven vallen de datumlabels op de x-as niet langer boven op de serie-afkortingen. Wanneer een DataSet
seriesKeyAbbreviationmeegeeft - de korte letter onder elke groepskolom - beginnen de aslabels nu onder die rij in plaats van hem te delen. Het viel op als overlappende tekst zodra een drukke as zijn labels -45° kantelde, vooral bij maandelijkseMM-YYYY-datums. De grafiek reserveert ook de bijbehorende extra ondermarge, zodat de gekantelde labels nog passen. Grafieken waarvan de DataSets geen afkorting dragen, blijven onveranderd.
v1.10.0
Pakketversies: react, wc, angular 1.10.0 · core 1.11.0 · vue, svelte 1.6.2 · devtools, insights 0.2.10.
- Speel door de jaren heen, op elke grafiek. De nieuwe opt-in prop
timelinevoegt een ingebouwde afspeelknop + jaarscrubber toe (plus een headlesschart.timeline()-controller) aan alle 21 grafieken. Tijdas-grafieken zoals Lijn en Vlak tekenen hun markeringen tot het actieve jaar en vegen soepel verder tijdens het afspelen; momentopname-grafieken zoals Taart, Gap en Spreiding tonen één periode tegelijk met waarden die tussen jaren glijden; Treemap en Radiale boom tweenen hele hiërarchieën vanuit metdategetagde wortelknopen; Sankey speelt over metdategetagde links; en Radar en Bar-Bell gebruiken een nieuw rijveldperiod. Overal standaard uit, en elke grafiekpagina heeft een live demo. - Onthulanimatie op elke grafiek. De opt-in prop
progressiveDrawveegt de markeringen van links naar rechts binnen bij het mounten - en op Lijn rijden labels mee op het uiteinde van elke groeiende lijn.replay()speelt de onthulling opnieuw af. - Beide features werken in de rendermodi
svgencanvas, respecterenprefers-reduced-motion(de grafiek verschijnt meteen volledig getekend) en zijn bewust inert op de experimentelewebgpu-renderer. - Opgelost: een re-render tijdens een lopende animatie hervat die nu vanaf de huidige positie in plaats van naar het einde te springen - framework-wrappers updaten de grafiek direct na het mounten, wat voorheen elke mount-autoplay annuleerde.
- Opgelost: de kale CDN-URL van de web-component-bundle (
cdn.jsdelivr.net/npm/@michi-vz/wc) verwijst nu naar de op zichzelf staande browserbundle, zodat een gewone<script type="module">-import werkt zonder het volledige/dist/...-pad uit te schrijven.
v1.9.0
Pakketversies: react 1.9.0 · core 1.10.0 · wc, angular 1.9.1 · vue, svelte 1.6.1 · devtools, insights 0.2.9.
- Download elke grafiek als afbeelding of CSV. Nieuwe exporthelpers in core:
chartContextToCsv(ctx)zet degetContext().a11yTablevan elke grafiek (de volledige, nooit ingekorte datatabel die elke grafiek meedraagt) om naar RFC 4180-CSV zonder code per grafiek, enchartToStyledSvgString/chartToStyledSvgDataUri/chartToPngDataUrlbouwen een op zichzelf staande, correct gestylede SVG of PNG. Geëxporteerde afbeeldingen verloren tot nu toe rasterlijnen, aslabels en de nullijn, omdat de grafiek-CSS inadoptedStyleSheetsleeft en onzichtbaar is voor een naïeve serializer; de PNG-helper legt bovendien de marks van de canvas-renderer over de SVG-assen. React-handles krijgengetElement(), zodat de helpers een scoped element krijgen in plaats van een fragiele globale DOM-query. - Eén tooltip, alle reeksen. LineCharts
sharedTooltip(plus een optionelesharedTooltipFormatter) toont één tooltip met de waarde van elke reeks bij het dichtstbijzijnde jaar, naast het dradenkruis, in plaats van alleen de dichtstbijzijnde reeks. Doorgegeven door het web component en de Angular-wrapper. Zie Line. - De a11y-tabel bevat nu de data zelf. LineCharts
a11yTablewerd een brede tabel per periode: één kolom per x-waarde met hetzelfde label als de as, één rij per reeks,-voor gaten. Een CSV-export viagetContext()bevat dus elk getekend punt. Statistieken per reeks blijven opcontext.series; dit is de enige gedragswijziging van deze release. - As-pariteit voor de Gap-grafiek. Gap krijgt
showZeroLineForXAxis(een doorgetrokken verticale lijn op x=0, nu getekend onafhankelijk vanshowGrid) enmaxBarHeight(een grafiek met 1 of 2 rijen rekt zijn balken niet langer over de volle hoogte uit), en de numerieke waardeassen van Gap en Comparable kantelen te drukke ticks eerst -45° voordat ze worden uitgedund, zoals de datumassen al deden. - Labelcorrecties in de bandgrafieken. Rijlabels beperken zich tot twee regels met een beletselteken in plaats van hun buren te overlappen; lange categorielabels roteren in plaats van onterecht uitgedund te worden; een Bubble-label tegen de rechterrand klapt naar links van zijn punt in plaats van afgesneden te worden; en Comparable Vertical Bar tekent de kortste subbalk bovenop (een rij waarvan de "voor"-waarde de kleinste was, verborg die volledig achter de hogere balk), met de veranderingspijl nu gecentreerd boven elk paar.
v1.8.1
Pakketversies: react 1.8.1 · core, wc, angular 1.9.0 · vue, svelte 1.6.0 · devtools, insights 0.2.8.
- Vier nieuwe grafieken: de atlas groeit naar 21. Comparable Vertical Bar (twee overlappende kolommen per categorie, het gearceerde "voor" achter het gevulde "na", met een veranderingspijl boven elk paar), en de eerste geografiefamilie van de bibliotheek: Choropleth Map (je eigen GeoJSON, 13 projecties, drempel- of categoriekleuring), Symbol Map (lng/lat-bellen met optionele gedempte landmassa) en Radial Tree (een radiaal dendrogram met cirkels op groeps- en bladniveau).
- Logaritmische assen op LineChart.
yAxisScale: "log"voor data die decaden omspant: niet-positieve waarden worden ontbrekend (met een datawaarschuwing) en te drukke labels dunnen uit naar machten van tien. Zie Line. - Echt 100%-stapelen op AreaChart.
stackOffset: "expand"maakt van elke gestapelde vlakgrafiek aandelen van het geheel: echt d3-stapelen, geen weergavetruc. Zie Area. - Vergelijkbare balken, twee nieuwe opties.
layout: "grouped"splitst elke band in twee helften naast elkaar in plaats van overlappen, endeltaIndicatortekent per rij een rood/groene veranderingspijl. Zie Comparable. - Eerlijke symboolposities. Symbol Maps
positionMode: "precise"houdt elke bel exact op zijn geprojecteerde lng/lat (overlappen toegestaan) in plaats van de standaard ontklonteringssimulatie: de juiste keuze zodra een zichtbare landmassa uitnodigt om posities letterlijk te lezen. Een live schakelaar op de Symbol Map-pagina toont het verschil. - Labels waar ze ontbraken. Scatter krijgt
pointLabelsplus eendrawOrder-keuze (klein-bovenop standaard, of het oude groot-bovenop); Treemap kan mettileValueLabelsde waarde van elke tegel tonen. De laad- en geen-data-overlays dekken nu ook Radar, Sankey en Treemap, en markeringen wijken correct zolang een overlay zichtbaar is.
v1.6.5
Packageversies: react 1.6.5 · core, wc, angular 1.6.0 · vue, svelte 1.5.7 · devtools, insights 0.2.5.
- RibbonChart wisselt eindelijk van plaats. De stapel van elke periode wordt nu per waarde opnieuw gerangschikt: een categorie die een andere inhaalt, kruist zichtbaar de linten op weg omhoog - precies waar een lintdiagram voor bestaat, hersteld uit de oorspronkelijke bibliotheek. Bekijk het op de Lint-pagina: Amerikaanse muziekomzet, waar streaming alles inhaalt en vinyl de cd weer voorbijgaat.
- Vergelijkbare staven die je echt kunt lezen. De kortste subbalk wordt weer bovenop getekend (een gegroeide balk verbergt zijn "voor" niet meer), en het nieuwe
colorsBasedMappinggeeft de voor-balk een eigen kleur: combineer een dekkende lichte tint metvalueBasedOpacity: 1voor een scherp licht/vol-contrast in beide thema's. Zie Vergelijkbare staven. - Belwolken zonder bevriezen.
layoutMode: "async"draait dezelfde deterministische krachtensimulatie in stukjes van ~12 ms achter de laad-overlay van de grafiek: een cluster van 3.000 bellen dat de pagina ~20 seconden blokkeerde, kost nu hooguit één frame van 50 ms.settleTicksregelt het settelen, ongewijzigde invoer slaat de simulatie helemaal over, en de lay-out wordt gememoïseerd tussen renders. Zie de botsings-demo op Bellen. - Kleine knoppen, groot comfort. De waarde-as van het halterdiagram kan onder het plot (
xAxisPosition: "bottom"), GapChart accepteert een explicietexAxisDomain(zoom een levensverwachtingsverhaal in op zijn band 35-90), de rijlabels van de tornado kunnen links van het plot (yAxisPosition: "left"), radar-poollabels blijven vrij van de titel, en de contextsamenvatting van de tornado benoemt nu zijn grootste onbalans. - Rijlabels die je kunt vastpakken - en scrubben. Op Gap, Vergelijkbaar en de tornado maakt de opt-in
interactiveRowLabelsvan elk rijlabel een echte control: hover of focus en een verbindingslijn loopt naar de rij, met tooltip en highlight; klikken pint vast. De labelgoot scrubt bovendien als een slider: sleep erlangs en de tooltip volgt je cursor van rij naar rij, tot aan rijen waarvan het label op een dichte as was uitgedund. Probeer het op de demo's van die pagina's. - Een legenda voor alles. Elke grafiekcontext draagt nu
legendData, en split-grafieken (treemap, bellen, vergelijkbare staven) tonen ook de lichte partnerkleur van elk label viaLegendItem.paleColor- de docs-demo's gebruiken het voor hun legenda's en de schakelaar "Betekenis | Kleurenparen". - Dichte band-assen dunnen zichzelf uit. Rijlabels van gap/vergelijkbaar/dubbel/halter (en de momentopname-as van de fontein) bemonsteren naar een leesbare subset in plaats van te versmeren bij 100+ rijen.
- Docs: druk op de knoppen. Elke grafiekpagina heeft nu live acties "✦ Leg deze grafiek uit" (de echte insights-regelmotor, in je browser) en "🛠 Probeer DevTools op deze grafiek", plus nieuwe voorbeelden met een verhaal: het LHC-dimuonspectrum op Spreidingsdiagram, bruto-vs-nettosalarissen in de EU op Bellen, en een levensverwachtingsgolf van ~195 landen op Verschil.
- De Fontein leert zichzelf uitleggen. De Fontein-pagina opent nu met een anatomie-woordenlijst (elk zichtbaar deel van de glyph heeft een uitgesproken betekenis) en een veldgids met elf live leeswijzen: zekerheid, stabiliteit, risico, AI-vertrouwen, verdeelde doelgroepen, Filipijnse tyfoons en meer, meestal in het strakke symmetrische pluimsilhouet. Symmetrie draagt nu ook betekenis: een expliciete
lean: 0zet de straal echt rechtop, eenleanmet teken markeert eenzijdig risico, en een straal zonderleanhoudt zijn decoratieve Geneefse wind (gerapporteerd alslean: nullingetContext()).
v1.6.1 - v1.6.4
Pakketversies: react 1.6.4 · devtools, insights 0.2.4 · core, wc, vue, svelte, angular 1.5.6. Vier kleine patchgolven tussen de grote releases:
- De waarde-as van GapChart, drie keer gehard. Door de consument aangeleverde
tickValuesworden gefilterd op eindige waarden, gesorteerd en ontdubbeld (ontaarde invoer valt terug op het datadomein); markeringen en as lopen niet meer over wanneertickValuesworden meegegeven terwijlenableExplicitTickValuesuit staat; en procentdomeinen krijgen bereikbewuste padding, zodat een nulpuntsmarkering op de as landt in plaats van erbuiten. - De legenda van VerticalStackBar houdt haar kleuren. Een uitgeschakelde sleutel blijft in
legendDatastaan metdisabled: true: de legendapil dimt in plaats van te verdwijnen, en kleurslots worden toegewezen over de volledige sleutelset - geen sleutel verandert van kleur bij uit- en weer inschakelen. Balken sluiten uitgeschakelde sleutels nog steeds uit.
v1.6.0
Pakketversies: react 1.6.0 · devtools 0.2.0 · insights 0.2.0 · core, wc, vue, svelte, angular 1.5.2.
- DevTools 0.2.0: de Michi-shield toggle-knop. De devtools mounten dekt je app niet langer af - het start als een klein zwevend schild (het wapenschild van de bibliotheek). Klik erop, of druk op
Ctrl/Cmd+Shift+M, om het paneel te openen; de open/gesloten status wordt per browser onthouden, zodat een herlaadbeurt precies terugkomt zoals je het achterliet. Een hoek al bezet door een ander zwevend widget? Sleep het schild overal naartoe - die plek wordt ook onthouden, en de nieuwebuttonPosition-optie kiest de starthoek. De handle kreegisOpen(), en<MichiVzDevtools />(react 1.6.0) geeftbuttonPositiondoor. Zie DevTools. - Insights 0.2.0:
matchLabels()cross-dataset koppeling. Koppel dezelfde entiteiten over twee anders gespelde lijsten (een CRM-export vs. een ERP-export) zodat twee datasets één samengevoegde grafiek worden: standaard wederzijdse beste match, gepoortd door een vertrouwensmarge, ongekoppelde rijen worden teruggegeven met een "bedoelde je"-hint. Model-vrije hashing werkt offline; de MiniLM-backend koppelt ook synoniemen, afkortingen en vertalingen. Probeer de live MatchLab-demo. - Core 1.5.2: performance-fixes voor zware pagina's. De idempotentie-guard van
onChartDataProcessedondertekent contexten nu via een begrensde FNV-1a-hash in plaats van elke rij te stringifyen (een string van meerdere MB per render bij 50k punten), en canvas/WebGPU scatter-hover vouwt de pointer-burst van elk frame samen tot één afsluitenderequestAnimationFrame-pass. Grote dashboards blijven responsief zonder iets te configureren. - Documentatie, nu in vier talen. De site spreekt Engels, Frans, Nederlands en Vietnamees, met een taalkiezer in de navbar - elke gids-, grafiek- en API-pagina is vertaald. Bijdragen aan de vertalingen zijn welkom; zie de link Help met vertalen in de voettekst.
- Een scherpere startpagina. De startpagina begint nu met het DevTools-verhaal en vier pijlers in gewone taal - alles inspecteren, grafieken die machines kunnen lezen, standaard toegankelijk, en draait lokaal. Een nieuwe voettekst nodigt je uit om het project een ster te geven, lid te worden van de community, bij te dragen en te helpen vertalen. Het Michi-schild is het favicon van de site en staat naast de titel in de navbar, en elke pagina heeft een unieke beschrijving en social card.
v1.5.0
- DevTools is er:
@michi-vz/devtools0.1.0, eerste publieke release. Een paneel in de pagina zelf (geen browserextensie) dat de live status van elke grafiek inspecteert via acht tabbladen - Overview (met live bewerking + Reset chart), Sizing, Scales, Diff, Hit-test, Profiler, Insights, en een A11y-audit. Shadow-DOM geïsoleerd, herschaalbaar, licht + donker, standaard alleen-dev met een inerte/production-ingang, en een React-oneliner:<MichiVzDevtools />. Zie DevTools. - Insights 0.1.0: transparante en local-first AI.Methodologie legt nu de exacte logica achter elke insight uit;
describeModelSource()vermeldt wat een modelbackend zou downloaden en vandaan, voordat er iets laadt;modelSourceleidt downloads om naar een mirror of zelf gehoste bestanden (of verbiedt ze volledig); enollamaCaller/openaiCompatCallerhaken een lokale AI (Ollama, LM Studio, llama.cpp) aan in één regel, zonder downloads. Anomalieresultaten dragen nu hun methode, drempel, en een uitleg in gewone taal. - Core: de devtools-hook kreeg kanalen voor hoogfrequente hit-tests en render-timing (geen kosten wanneer devtools uit staat).
v1.4.0
- De hover-crosshair is terug - en configureerbaar. De verticale muislijn van LineChart staat weer standaard aan (legacy-pariteit; de port had dit stilletjes uitgeschakeld), snapt naar het dichtstbijzijnde datapunt in plaats van de ruwe cursor te volgen, en verbergt zichzelf wanneer de cursor de grafiek verlaat - zowel in SVG-, canvas- als WebGPU-modus. Stijl het per grafiek met
enableMouseLine: { stroke, strokeWidth, strokeDasharray, snap }, thema het globaal met de--michi-vz-crosshair/--michi-vz-crosshair-width/--michi-vz-crosshair-dashCSS-variabelen, of geeffalsedoor om het uit te zetten.
v1.3.0
- Geen periode meer achtergelaten op de x-as. LineChart-datumassen behouden nu altijd de echte eerste en laatste periode (ruwe
d3-tijd-ticks snapten voorheen naar ronde grenzen en lieten ze vallen), en drukke labels roteren automatisch -45° en dunnen daarna uit tot ~5 in plaats van stilletjes te verdwijnen. - Doorlopende tijdlijnen met
fillPeriodTicks(Line + Area, opt-in). Een tick voor elke periode in het bereik, niet alleen de aanwezige in de data; ontbrekende periodes renderen vervaagd met een "geen data"-hovertooltip, aanpasbaar vianoDataTickTooltipennoDataTickColor.
v1.2.1
- Elke npm-pagina linkt naar zijn broers en zussen. Elke package-README draagt nu een tabel Framework packages die alle zes pakketten linkt, zodat je vanuit elke wrapper de rest kunt bereiken. Een dode monorepo-link is gefixt.
- Alle zes pakketten opnieuw uitgelijnd.
vue,angular,svelteenwcliepen een versie achter op npm; ze worden nu samen metcoreenreactin dezelfde versie gepubliceerd. - Vindbaarheid in de docs. De Installatie-tabel linkt elk pakket naar npm, en er is een npm-knop op de homepage plus een npm-icoon in de bovenste navigatie.
v1.2.0
De release van drop-in compatibiliteit: de scoped @michi-vz/*-pakketten kunnen de legacy single-package michi-vz vervangen zonder chartregressies. Alles is backward-compatible.
- Renderer-onafhankelijke context.
legendData(het per-serie kleurcontract voor canvas- / skip-mode-consumers) op de Line/Gap/Area/Scatter/BarBell/Radar-contexten;renderedData/visibleItems; elkeon*Processedis nu idempotent, dus die vuurt alleen wanneer de context daadwerkelijk verandert en loopt nooit meer rond. - LineChart. Laad- / geen-data-statussen, as-configuratie (
yTicks, gridlijnen, zero-line-highlight),fontFamily, en door de consument aangeleverdesvgChildren. - Meer chartprops. Gap-vormlegenda; Comparable
maxBarHeight/symmetricXDomain; VerticalStackBar-labelrotatie +keys; Scatter-bandschaal, crosshair, en vormen per punt; Radar legacy datavorm + vergevingsgezinde hit-test. - Assen, SEO en a11y. Adaptieve auto-rotatie en tick-verdunning op drukke assen; de chart-
<svg>draagt nu<title>,<desc>, en schema.org JSON-LD<metadata>. - Experimenteel WebGPU-renderpad naast SVG en canvas.
v1.1.1
- Bar-Bell-fix. Eindkap-cirkels renderen bovenop de barsegmenten (voorheen kon een later segment over de kap van het vorige segment heen schilderen), en het hele segment is hoverbaar voor tooltips, niet alleen de eindkap-cirkel.
