go-chart icon indicating copy to clipboard operation
go-chart copied to clipboard

Rendering A Pie Chart with a Title - Title over top of chart

Open HSchmale16 opened this issue 7 months ago • 1 comments

I'm trying to make it render some nice looking plots using this library. However I'm having issues getting the title to render right using the chart.PieChart{} interface. The title renders overs the pie chart.

How can I make it so the chart is smaller than the title section so the title is an actual header.

image

func renderPieChart(parties map[string]float64, member DB_CongressMember) ([]byte, error) {
	values := make([]chart.Value, 0, len(parties))
	for k, v := range parties {
		values = append(values, chart.Value{
			Value: v,
			Label: k,
			Style: chart.Style{
				FillColor: getColorForParty(k),
			},
		})
	}

	// Create a new pie chart
	pie := chart.PieChart{
		Width:  512,
		Height: 512,
		Values: values,
		Title:  "Which Parties " + member.Name + " works with",
	}

	// Render the pie chart as a PNG image
	b := bytes.NewBuffer([]byte{})
	err := pie.Render(chart.PNG, b)
	if err != nil {
		return nil, err
	}

	return b.Bytes(), nil
}

HSchmale16 avatar Jul 07 '24 01:07 HSchmale16