我正在尝试基于数据点的线型图和面积图的组合。
在图1中,Y轴看起来很笨拙,有很多刻度。是否有一种方法,可以设置这些ticks可能是 "3 "在Y轴上。这应该保持恒定的任何数据点,蜱应该总是3。
另外在图2中,多了一条横线,在0以下,有没有什么办法可以避免,让参照物总是从0开始,而不是在0以下有线条。
沙盒链接。https:/codesandbox.iosreact-line-chart-n9g6o?file=srcLineChart.js。
import * as React from "react";
import Highcharts from "highcharts";
import HighchartsReact from "highcharts-react-official";
import HC_exporting from "highcharts/modules/exporting";
HC_exporting(Highcharts);
function LineChart(props) {
let chartOptions = {
chart: {
type: "line",
height: props.height
},
legend: {
align: "center",
verticalAlign: "bottom",
x: 0,
y: 0
},
tooltip: {
shared: true,
useHTML: true,
formatter: function() {
let self = this;
let formattedString = "<small></small><table>";
self.points.forEach(elem => {
formattedString +=
'<tr><td style="color: {series.color}">' +
elem.series.name +
": </td>";
formattedString +=
'<td style="text-align: right"><b>' +
elem.y +
" (" +
elem.point.ts +
")</b></td></tr>";
});
return formattedString;
}
},
colors: props.legendColor,
xAxis: {
visible: true,
step: 1,
tickInterval: 6,
categories: props.categories
},
yAxis: {
visible: true,
step: 1,
tickInterval: 1,
title: {
enabled: true,
text: "Value",
style: {
fontWeight: "100"
}
}
},
plotOptions: {
column: {
dataLabels: {
enabled: true,
crop: false,
overflow: "none"
}
},
line: {
marker: {
enabled: false
}
}
},
series: props.chartData
};
return <HighchartsReact highcharts={Highcharts} options={chartOptions} />;
}
export default LineChart;
在图1中,Y轴看起来很笨拙,有很多ticks。有没有一种方法,可以将这些ticks设置为可能是 "3 "在y轴上。这应该保持任何数据点的恒定,ticks应该总是3
使用 tickAmount
属性。
yAxis: {
tickAmount: 3,
..
}
API参考。 https:/api.highcharts.comhighchartsyAxis.tickAmount。
另外,在图2中,有一条额外的水平线,低于0.有什么办法可以避免它,使参考总是从0开始,而不是有低于0的线。
是的,你可以例如设置 softMax
属性。如果只有0个值,Highcharts无法计算轴的刻度。
yAxis: {
softMax: 1,
...
}