放大镜 - Magnifier
上一篇
滚动条 - ScrollBar
下一篇
仪表盘 - Gauge
Loading...
放大镜组件用于在图表上提供局部放大功能,帮助用户更清晰地查看数据细节。
import { jsx, Canvas, Chart, Line, Magnifier } from '@antv/f2';const context = document.getElementById('container').getContext('2d');const data = [{ date: '2024-01-01', value: 10 },{ date: '2024-01-02', value: 15 },{ date: '2024-01-03', value: 8 },{ date: '2024-01-04', value: 25 },{ date: '2024-01-05', value: 30 },{ date: '2024-01-06', value: 28 },{ date: '2024-01-07', value: 35 },];const { props } = (<Canvas context={context} pixelRatio={window.devicePixelRatio}><Chart data={data}><Line x="date" y="value" /><Magnifier show={true} x={200} y={150} width={100} height={80} scale={2} /></Chart></Canvas>);const chart = new Canvas(props);chart.render();
部分属性可参考 scale 图表度量,度量详细介绍可见:度量
是否显示放大镜,默认为 false
放大镜中心点的 x 坐标,默认为 0
放大镜中心点的 y 坐标,默认为 0
放大镜的宽度,默认为 100
放大镜的高度,默认为 80
放大倍数,默认为 2
放大镜圆角半径,默认为 10
边框宽度,默认为 1
边框颜色,默认为 #e8e8e8
背景颜色,默认为 rgba(255, 255, 255, 0.9)
阴影模糊程度,默认为 10
阴影颜色,默认为 rgba(0, 0, 0, 0.3)
是否显示,默认为 true
数据字段名
可通过获取 ref 调用
在指定坐标显示放大镜
隐藏放大镜
更新放大镜位置
更新放大倍数
<Magnifier show={true} x={200} y={150} />
<Magnifiershow={true}x={200}y={150}width={120}height={100}scale={3}borderColor="#1890ff"backgroundColor="rgba(255, 255, 255, 0.95)"radius={20}/>
const [showMagnifier, setShowMagnifier] = useState(false);const [position, setPosition] = useState({ x: 0, y: 0 });// 在图表点击时显示放大镜const handleChartClick = (ev) => {setPosition({ x: ev.x, y: ev.y });setShowMagnifier(true);};<Magnifier show={showMagnifier} x={position.x} y={position.y} scale={2.5} />;
show 属性是否为 truex 和 y 坐标是否在图表范围内visible 属性是否为 true