我正在使用 Recharts 并且有一个显示折线图和条形图的组件。这两个图表显示相同的 7 天跨度,但刻度未对齐。折线图从 Y 轴线开始,而条形图有左填充(默认情况下)。
在折线图上,我尝试添加 padding={{left: 100 }},它使 X 轴的起点对齐,但其余的刻度都关闭了,更重要的是它不响应屏幕尺寸。据我所知,不允许使用“5%”之类的东西。
在条形图上,我尝试将填充设置为零和负数,但在响应缩放和刻度错位方面遇到了同样的问题。
有没有办法对齐两个图表上的刻度和数据?
这是代码:
<ResponsiveContainer width="95%" height={300} >
<LineChart width={350} height={300} data={this.props.data.activityResponse.edges} connectNulls={true} >
<Legend verticalAlign="top" height={36}/>
<Line type="monotone" dataKey="node.participation" stroke={this.participationColor} name="Participation" strokeWidth={this.strokeWidth} />
<Line type="monotone" dataKey="node.focus" stroke={this.focusColor} name="Focus" strokeWidth={this.strokeWidth} />
<XAxis dataKey="node.logDate" tickFormatter={this.formatXAxis} />
<YAxis dataKey="node.participation" >
<Label value="%" position="insideLeft" />
</YAxis>
<Tooltip content={this.renderResponseTooltip} />
</LineChart>
</ResponsiveContainer>
<ResponsiveContainer width="95%" height={300} >
<BarChart width={350} height={300} data={this.props.data.activityStep.edges} connectNulls={true} >
<Legend verticalAlign="top" height={36}/>
<Bar dataKey="node.stepCount" fill={this.stepColor} name="Steps" />
<XAxis dataKey="node.logDate" tickFormatter={this.formatXAxis} />
<YAxis dataKey="node.stepCount" >
</YAxis>
<Tooltip content={this.renderStepTooltip} />
</BarChart>
</ResponsiveContainer>