Column and Line mix
You can use our <a href="https://www.amcharts.com/docs/v4/chart-types/xy-chart/">XYChart</a> to mix and match various types of two-dimensional charts - line, bar, column, area, candlestick, OHLC, etc. The most common combination is the column and line chart.
by Rogério Saraceni
October 24, 2019
HTML
<script src="https://www.amcharts.com/lib/4/core.js"></script>
<script src="https://www.amcharts.com/lib/4/charts.js"></script>
<script src="https://www.amcharts.com/lib/4/themes/animated.js"></script>
<div id="chartdiv"></div>
CSS
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
#chartdiv {
width: 100%;
height: 500px;
}
JavaScript
// Themes begin
am4core.useTheme(am4themes_animated);
// Themes end
// Create chart instance
var chart = am4core.create("chartdiv", am4charts.XYChart);
// Data for both series
var data = [ {
"mes": "Jan",
"expenses": 21.1,
}, {
"mes": "Feb",
"income": 26.2,
"income2": 32.5,
"expenses": 30.5,
}, {
"mes": "Mar",
"income": 30.1,
}, {
"mes": "Apr",
"income": 29.5,
"income2": 32.5,
}, {
"mes": "May",
"income": 30.6,
"income2": 32.5,
"expenses3": 21.1
}, {
"mes": "Jun",
"expenses3": 21.1
}, {
"mes": "Jul",
"income": 14.1,
"income2": 32.5,
} , {
"mes": "Aug",
"income": 28.1,
} , {
"mes": "Sep",
"income": 31.1,
}, {
"mes": "Oct",
"income": 25.1,
}, {
"mes": "Nov",
"expenses2": 21.1,
"expenses3": 21.1
}, {
"mes": "Dec",
"income3": 23.5,
}];
/* Create axes */
var categoryAxis = chart.xAxes.push(new am4charts.CategoryAxis());
categoryAxis.dataFields.category = "mes";
categoryAxis.renderer.minGridDistance = 20;
categoryAxis.renderer.cellStartLocation = 0.1
categoryAxis.renderer.cellEndLocation = 0.9
categoryAxis.renderer.grid.template.location = 0;
categoryAxis.renderer.labels.template.fontSize = 12;
/* Create value axis */
var valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
valueAxis.renderer.labels.template.disabled = true;
/* Retirando as linhas Verticais e Horizontais */
categoryAxis.renderer.grid.template.disabled = false;
valueAxis.renderer.grid.template.disabled = true;
/* Create series */
function criarColunas(field, name, color){
var columnSeries = chart.series.push(new am4charts.ColumnSeries());
columnSeries.dataFields.valueY = field;
columnSeries.dataFields.categoryX = "mes";
columnSeries.name = name;
columnSeries.columns.template.tooltipText = "[#fff font-size: 15px]{name} in {categoryX}:\n[/][#fff font-size: 20px]{valueY}[/] [#fff]{additional}[/]";
columnSeries.columns.template.width = am4core.percent(100);
columnSeries.columns.template.align = "right";
...