1.0.27 • Published 10 months ago

w-hc2png v1.0.27

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

w-hc2png

A package for Highcharts to png by chromium.

language npm version license npm download npm download jsdelivr download

Documentation

To view documentation or get support, visit docs.

Installation

Using npm(ES6 module):

Note: w-hc2png is mainly dependent on puppeteer, json5 and @hapi/hapi.

npm i w-hc2png

Example for function:

Link: [dev source code]

import WHc2png from './src/WHc2png.mjs'

function genPlotHtml(fp, b64) { let h = `

async function testa() {

let width = 500
let height = 400
let scale = 3
let opt = {

    title: {
        text: 'Logarithmic axis demo'
    },

    xAxis: {
        tickInterval: 1,
        type: 'logarithmic',
        accessibility: {
            rangeDescription: 'Range: 1 to 10'
        }
    },

    yAxis: {
        type: 'logarithmic',
        minorTickInterval: 0.1,
        accessibility: {
            rangeDescription: 'Range: 0.1 to 1000'
        }
    },

    tooltip: {
        headerFormat: '<b>{series.name}</b><br />',
        pointFormat: 'x = {point.x}, y = {point.y}'
    },

    series: [{
        data: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512],
        pointStart: 1
    }]

}

let b64 = await WHc2png(width, height, scale, opt)
// console.log('b64', b64)

fs.writeFileSync('./test-scla.b64', b64)
genPlotHtml('./test-scla.html', b64)

console.log('finish')

} testa() .catch((err) => { console.log(err) })

async function testb() {

let width = 500
let height = 400
let scale = 3
let cOpt = `
let ds = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
for (let i = 0; i < ds.length; i++) {
    ds[i] = Math.sin(ds[i]/360*Math.PI)
}
let opt = {

    title: {
        text: 'Logarithmic axis demo'
    },

    xAxis: {
        tickInterval: 1,
        type: 'logarithmic',
        accessibility: {
            rangeDescription: 'Range: 1 to 10'
        }
    },

    yAxis: {
        type: 'logarithmic',
        minorTickInterval: 0.1,
        accessibility: {
            rangeDescription: 'Range: 0.1 to 1000'
        }
    },

    tooltip: {
        headerFormat: '<b>{series.name}</b><br />',
        pointFormat: 'x = {point.x}, y = {point.y}'
    },

    series: [{
        data: ds,
        pointStart: 1
    }]

}
`
let whOpt = {}

let b64 = await WHc2png(width, height, scale, cOpt, whOpt)
// console.log('b64', b64)

fs.writeFileSync('./test-sclb.b64', b64)
genPlotHtml('./test-sclb.html', b64)

console.log('finish')

} testb() .catch((err) => { console.log(err) })

#### Example for Server:
> **Link:** [[dev source code](https://github.com/yuda-lyu/w-hc2png/blob/master/srv.mjs)]
```alias
import WHc2pngServer from 'w-hc2png/src/WHc2pngServer.mjs'

let opt = {
    port: 9020,
    apiName: 'api',
}
WHc2pngServer(opt)

------------------------

[POST] http://localhost:9020/api

{
    width: 500,
    height: 400,
    scale: 3,
    opt: {
    
        title: {
            text: 'Logarithmic axis demo'
        },
    
        xAxis: {
            tickInterval: 1,
            type: 'logarithmic',
            accessibility: {
                rangeDescription: 'Range: 1 to 10'
            }
        },
    
        yAxis: {
            type: 'logarithmic',
            minorTickInterval: 0.1,
            accessibility: {
                rangeDescription: 'Range: 0.1 to 1000'
            }
        },
    
        tooltip: {
            headerFormat: '<b>{series.name}</b><br />',
            pointFormat: 'x = {point.x}, y = {point.y}'
        },
    
        series: [{
            data: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512],
            pointStart: 1
        }]
    
    }

}
1.0.26

10 months ago

1.0.27

10 months ago

1.0.25

1 year ago

1.0.24

1 year ago

1.0.23

1 year ago

1.0.19

2 years ago

1.0.18

2 years ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.22

2 years ago

1.0.21

2 years ago

1.0.20

2 years ago

1.0.15

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago