eurostat-map
    Preparing search index...

    Interface PieMap

    Pie map type.

    interface PieMap {
        svgId(): string;
        svgId(id: string): this;
        containerId(): string;
        containerId(id: string): this;
        width(): number;
        width(w: number): this;
        height(): number;
        height(h: number): this;
        geo(): string;
        geo(g: string): this;
        proj(): string;
        proj(p: string): this;
        scale(): string;
        scale(s: "60M" | "20M" | "10M" | "03M" | "01M"): this;
        nutsLevel(): number | "mixed";
        nutsLevel(level: number | "mixed"): this;
        nutsYear(): number;
        nutsYear(year: number): this;
        position(v: { x?: number; y?: number; z?: number }): this;
        position(): { x: number; y: number; z: number };
        projectionFunction(): any;
        projectionFunction(fn: any): this;
        title(): string;
        title(t: string): this;
        subtitle(): string;
        subtitle(t: string): this;
        footnote(): string | false;
        footnote(text: string | false): this;
        footnoteTooltipText(): string | false;
        footnoteTooltipText(text: string | false): this;
        footnoteWrap(): number | false;
        footnoteWrap(chars: number | false): this;
        stat(): StatConfig;
        stat(config: StatConfig): this;
        stat(key: string): StatConfig;
        stat(key: string, config: StatConfig): this;
        statData(): StatData;
        statData(key: string): StatData;
        statData(key: string, data: StatData): this;
        getTime(): string;
        noDataText(): string;
        noDataText(text: string): this;
        language(): string;
        language(lang: string): this;
        updateLegend(): this;
        tooltip(): TooltipConfig;
        tooltip(config: TooltipConfig): this;
        zoomExtent(): [number, number];
        zoomExtent(extent: [number, number]): this;
        zoomButtons(): boolean;
        zoomButtons(show: boolean): this;
        gridCartogramSettings(): GridCartogramSettings;
        gridCartogramSettings(settings: Partial<GridCartogramSettings>): this;
        insets(): false | "default" | InsetConfig[];
        insets(config: false | "default" | InsetConfig[]): this;
        drawGraticule(): boolean;
        drawGraticule(show: boolean): this;
        drawCoastalMargin(): boolean;
        drawCoastalMargin(show: boolean): this;
        coastalMarginSettings(): CoastalMarginSettings;
        coastalMarginSettings(settings: Partial<CoastalMarginSettings>): this;
        placenames(): boolean;
        placenames(show: boolean): this;
        labels(): object;
        labels(config: object): this;
        annotations(): any;
        annotations(config: any): this;
        stamp(): object;
        stamp(config: { x: number; y: number; text: string; size?: number }): this;
        scalebar(): ScalebarConfig;
        scalebar(config: boolean | ScalebarConfig): this;
        showScalebar(): boolean;
        showScalebar(show: boolean): this;
        scalebarPosition(): [number, number];
        scalebarPosition(pos: [number, number]): this;
        showEstatLogo(): boolean;
        showEstatLogo(show: boolean): this;
        showEstatRibbon(): boolean;
        showEstatRibbon(show: boolean): this;
        svg(): any;
        svg(s: any): this;
        filterGeometriesFunction(): (geometry: any) => boolean;
        filterGeometriesFunction(fn: (geometry: any) => boolean): this;
        gridCartogram(): boolean;
        gridCartogram(enable: boolean): this;
        backgroundMap(): boolean;
        backgroundMap(show: boolean): this;
        minimap(): any;
        minimap(config: any): this;
        insetsButton(): boolean;
        insetsButton(show: boolean): this;
        legendButton(): boolean;
        legendButton(show: boolean): this;
        placenamesFilter(): (name: any) => boolean;
        placenamesFilter(fn: (name: any) => boolean): this;
        header(): boolean;
        header(show: boolean): this;
        footer(): boolean;
        footer(show: boolean): this;
        footerPadding(): number;
        footerPadding(padding: number): this;
        headerPadding(): number;
        headerPadding(padding: number): this;
        titlePosition(): [number, number];
        titlePosition(pos: [number, number]): this;
        subtitlePosition(): [number, number];
        subtitlePosition(pos: [number, number]): this;
        footnotePosition(): [number, number];
        footnotePosition(pos: [number, number]): this;
        logoPosition(): [number, number];
        logoPosition(pos: [number, number]): this;
        ribbonPosition(): [number, number];
        ribbonPosition(pos: [number, number]): this;
        zoomButtonsPosition(): [number, number];
        zoomButtonsPosition(pos: [number, number]): this;
        insetsButtonPosition(): [number, number];
        insetsButtonPosition(pos: [number, number]): this;
        legendButtonPosition(): [number, number];
        legendButtonPosition(pos: [number, number]): this;
        hoverColor(): string;
        hoverColor(color: string): this;
        showSourceLink(): boolean;
        showSourceLink(show: boolean): this;
        patternFill(): any;
        patternFill(config: any): this;
        dorlingSettings(): DorlingSettings;
        dorlingSettings(settings: Partial<DorlingSettings>): this;
        onZoomEnd(): (event: any) => void;
        onZoomEnd(fn: (event: any) => void): this;
        onZoom(): (event: any) => void;
        onZoom(fn: (event: any) => void): this;
        onRegionMouseOver(): (
            event: MouseEvent,
            regionId: string,
            props: any,
        ) => void;
        onRegionMouseOver(
            fn: (event: MouseEvent, regionId: string, props: any) => void,
        ): this;
        onRegionMouseMove(): (
            event: MouseEvent,
            regionId: string,
            props: any,
        ) => void;
        onRegionMouseMove(
            fn: (event: MouseEvent, regionId: string, props: any) => void,
        ): this;
        onRegionMouseOut(): (
            event: MouseEvent,
            regionId: string,
            props: any,
        ) => void;
        onRegionMouseOut(
            fn: (event: MouseEvent, regionId: string, props: any) => void,
        ): this;
        onRegionClick(): (event: MouseEvent, regionId: string, props: any) => void;
        onRegionClick(
            fn: (event: MouseEvent, regionId: string, props: any) => void,
        ): this;
        onBuild(): (map: MapInstance) => void;
        onBuild(callback: (map: MapInstance) => void): this;
        build(): this;
        updateGeoData(): this;
        updateStatData(): this;
        updateStatValues(): this;
        updateClassification(): this;
        updateStyle(): this;
        recalculateLayout(): void;
        exportMapToSVG(): this;
        exportMapToPNG(width?: number, height?: number): Promise<PieMap>;
        setFromURL(): this;
        transitionDuration(): number;
        transitionDuration(ms: number): this;
        filtersDefinitionFunction(): (svg: any, numberOfClasses: number) => void;
        filtersDefinitionFunction(
            fn: (svg: any, numberOfClasses: number) => void,
        ): this;
        regionCentroids(): { id: string; x: number; y: number }[];
        legend(): false | PieChartLegendConfig;
        legend(config: false | PieChartLegendConfig): this;
        catColors(): any;
        catColors(v: any): this;
        catLabels(): any;
        catLabels(v: any): this;
        showOnlyWhenComplete(): boolean;
        showOnlyWhenComplete(v: boolean): this;
        noDataFillStyle(): string;
        noDataFillStyle(v: string): this;
        pieSettings(): { innerRadius?: number };
        pieSettings(v: { innerRadius?: number }): this;
        compositionSettings(): {
            type?: | "pie"
            | "flag"
            | "ring"
            | "segment"
            | "radar"
            | "agepyramid"
            | "halftone";
            radarValueMode?: "share"
            | "absolute";
            minSize?: number;
            maxSize?: number;
            strokeFill?: string;
            strokeWidth?: number;
            reverseOrder?: boolean;
            order?: string[];
            stripesOrientation?: number;
            offsetAngle?: number;
            agePyramidHeightFactor?: number;
            otherColor?: string;
            otherText?: string;
        };
        compositionSettings(
            v: {
                type?:
                    | "pie"
                    | "flag"
                    | "ring"
                    | "segment"
                    | "radar"
                    | "agepyramid"
                    | "halftone";
                radarValueMode?: "share"
                | "absolute";
                minSize?: number;
                maxSize?: number;
                strokeFill?: string;
                strokeWidth?: number;
                reverseOrder?: boolean;
                order?: string[];
                stripesOrientation?: number;
                offsetAngle?: number;
                agePyramidHeightFactor?: number;
                otherColor?: string;
                otherText?: string;
            },
        ): this;
        dorling(): boolean;
        dorling(v: boolean): this;
        compositionTotalCode(): string;
        compositionTotalCode(v: string): this;
        statCodes(): string[];
        statCodes(v: string[]): this;
        statPie(config: CompositionStatConfig): this;
        statPie(
            config: CompositionStatConfig,
            categoryParameter?: string,
            categoryCodes?: string[],
            categoryLabels?: string[],
            categoryColors?: string[],
            totalCode?: string,
        ): this;
        [key: string]: any;
    }

    Hierarchy (View Summary)

    Indexable

    • [key: string]: any

      Allow additional map-type-specific properties and methods.

    Index

    Methods

    • Initial map viewport. x/y in projected coordinates, z is pixel size (map units per screen pixel — smaller = more zoomed in).

      Parameters

      • v: { x?: number; y?: number; z?: number }

      Returns this

      map.position({ x: 4800000, y: 3400000, z: 6000 })
      
    • Returns { x: number; y: number; z: number }

    • Returns the time dimension value from the loaded Eurostat dataset. Useful for displaying the data period in the map title.

      Returns string

      map.onBuild(() => map.title('Population ' + map.getTime()))
      
    • Builds the map from scratch. Call once after initial configuration.

      Returns this

      eurostatmap.map('choropleth')
      .stat({ eurostatDatasetCode: 'demo_r_d3dens' })
      .build()
    • Exports the map as a PNG file and triggers a browser download.

      Parameters

      • Optionalwidth: number

        Output width in pixels. Defaults to SVG width.

      • Optionalheight: number

        Output height in pixels. Defaults to SVG height.

      Returns Promise<PieMap>

    • Returns {
          type?:
              | "pie"
              | "flag"
              | "ring"
              | "segment"
              | "radar"
              | "agepyramid"
              | "halftone";
          radarValueMode?: "share"
          | "absolute";
          minSize?: number;
          maxSize?: number;
          strokeFill?: string;
          strokeWidth?: number;
          reverseOrder?: boolean;
          order?: string[];
          stripesOrientation?: number;
          offsetAngle?: number;
          agePyramidHeightFactor?: number;
          otherColor?: string;
          otherText?: string;
      }

      • Optionaltype?: "pie" | "flag" | "ring" | "segment" | "radar" | "agepyramid" | "halftone"
      • OptionalradarValueMode?: "share" | "absolute"

        Radar wedge radius mode: share within symbol (default) or absolute values across map.

      • OptionalminSize?: number
      • OptionalmaxSize?: number
      • OptionalstrokeFill?: string
      • OptionalstrokeWidth?: number
      • OptionalreverseOrder?: boolean
      • Optionalorder?: string[]

        Category code order for composition rendering.

      • OptionalstripesOrientation?: number
      • OptionaloffsetAngle?: number
      • OptionalagePyramidHeightFactor?: number
      • OptionalotherColor?: string
      • OptionalotherText?: string
    • Parameters

      • v: {
            type?:
                | "pie"
                | "flag"
                | "ring"
                | "segment"
                | "radar"
                | "agepyramid"
                | "halftone";
            radarValueMode?: "share"
            | "absolute";
            minSize?: number;
            maxSize?: number;
            strokeFill?: string;
            strokeWidth?: number;
            reverseOrder?: boolean;
            order?: string[];
            stripesOrientation?: number;
            offsetAngle?: number;
            agePyramidHeightFactor?: number;
            otherColor?: string;
            otherText?: string;
        }
        • Optionaltype?: "pie" | "flag" | "ring" | "segment" | "radar" | "agepyramid" | "halftone"
        • OptionalradarValueMode?: "share" | "absolute"

          Radar wedge radius mode: share within symbol (default) or absolute values across map.

        • OptionalminSize?: number
        • OptionalmaxSize?: number
        • OptionalstrokeFill?: string
        • OptionalstrokeWidth?: number
        • OptionalreverseOrder?: boolean
        • Optionalorder?: string[]

          Category code order for composition rendering.

        • OptionalstripesOrientation?: number
        • OptionaloffsetAngle?: number
        • OptionalagePyramidHeightFactor?: number
        • OptionalotherColor?: string
        • OptionalotherText?: string

      Returns this