React Flow 中 Minimap 與 Controls 組件使用指南:交互式小地圖與視口控制定制(含代碼示例)

本文為《React Agent:從零開始構建 AI 智能體》專欄系列文章。 專欄地址:https://blog.csdn.net/suiyingy/category_12933485.html。項目地址:https://gitee.com/fgai/react-agent(含完整代碼示?例與實戰源)。完整介紹:https://blog.csdn.net/suiyingy/article/details/146983582。

????????在 React Flow 中,Minimap(小地圖)是一個非常實用的組件,它主要用于呈現流程圖或圖形的整體縮略視圖。用戶通過 Minimap可以快速了解整個圖形的結構和布局,以及當前視口在整個圖形中的位置。它將每個節點渲染為一個 SVG 元素,并且可以通過各種屬性進行定制,如節點的顏色、邊框半徑、描邊寬度等。默認情況下,Minimap 是非交互式的,但通過設置pannable和zoomable屬性為true,可以讓用戶通過拖動或縮放 Minimap 來控制視口的位置和縮放比例,方便用戶在處理復雜的大型圖形時快速定位和導航。

????????Controls(控件)則是 React Flow 提供的一組用于控制視口操作的組件。它通常包含縮放、居中和鎖定視口等功能按鈕。通過這些控件,用戶可以方便地對圖形進行縮放操作,以便更清晰地查看細節或整體布局;點擊居中按鈕可以將圖形自動居中顯示在視口中;而鎖定視口功能則可以防止用戶意外地拖動或縮放視口,確保圖形的顯示狀態保持穩定。Controls 組件是可定制的,用戶可以根據自己的需求和設計偏好來調整控件的樣式和布局,以適應不同的應用場景。

????????示例程序如下所示。

import React, { useCallback } from 'react';
import {ReactFlow,MiniMap,Controls,Background,useNodesState,useEdgesState,addEdge,BackgroundVariant,
} from 'reactflow';import 'reactflow/dist/style.css';
const initialNodes = [{ id: '1', position: { x: 0, y: 0 }, data: { label: '1' } },{ id: '2', position: { x: 0, y: 100 }, data: { label: '2' } },
];
const initialEdges = [{ id: 'e1-2', source: '1', target: '2' }];export default function App() {const [nodes, setNodes, onNodesChange] = useNodesState(initialNodes);const [edges, setEdges, onEdgesChange] = useEdgesState(initialEdges);const onConnect = useCallback((params) => setEdges((eds) => addEdge(params, eds)),[setEdges],);return (<div style={{ height: '500px' }}><ReactFlownodes={nodes}edges={edges}onNodesChange={onNodesChange}onEdgesChange={onEdgesChange}onConnect={onConnect}fitView><Controls /><MiniMap nodeColor="#90caf9"                // 節點填充顏色nodeStrokeColor="#1e88e5"          // 節點邊框顏色nodeBorderRadius={6}               // 節點圓角maskColor="rgba(144, 202, 249, 0.2)" // 視口遮罩顏色style={{backgroundColor: 'white',        // 背景色border: '1px solid #ccc',        // 邊框樣式borderRadius: '12px'             // 整體圓角}}nodeSize={12}                      // 節點尺寸/></ReactFlow></div>);
}

????????運行程序后結果如下圖所示。

圖1 Minimap 與 Controls

???立即關注獲取最新動態

點擊訂閱《React Agent 開發專欄》,每周獲取智能體開發深度教程。項目代碼持續更新至React Agent 開源倉庫,歡迎 Star 獲取實時更新通知!FGAI 人工智能平臺:FGAI 人工智能平臺

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83896.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83896.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83896.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Windows Ubuntu 目錄映射關系

情況一&#xff1a;你是通過 WSL (Windows Subsystem for Linux) 安裝 Ubuntu 這是最常見的情況。如果你在 Microsoft Store 安裝了 “Ubuntu”&#xff0c;默認就是 WSL。 &#x1f4c1; 目錄映射關系如下&#xff1a; 從 Ubuntu&#xff08;WSL&#xff09;訪問 Windows&…

雙指針法高效解決「移除元素」問題

雙指針法高效解決「移除元素」問題 雙指針法高效解決「移除元素」問題一、問題描述二、解法解析&#xff1a;雙指針法1. 核心思想2. 算法步驟3. 執行過程示例 三、關鍵點分析四、復雜度分析五、與其他解法的比較1. 快慢指針法2. 本解法的優勢 六、實際應用場景七、總結 雙指針法…

知識圖譜構架

目錄 知識圖譜構架 一、StanfordNLP 和 spaCy 工具介紹 &#xff08;一&#xff09;StanfordNLP 主要功能 使用示例 &#xff08;二&#xff09;spaCy 主要功能 使用示例 二、CRF 和 BERT 的基本原理和入門 &#xff08;一&#xff09;CRF&#xff08;條件隨機場&…

激光三角測量標定與應用

文章目錄 1&#xff0c;介紹。2&#xff0c;技術原理3&#xff0c;類型。3.1&#xff0c;直射式3.2&#xff0c;斜射式3.3&#xff0c;兩種三角位移傳感器特性的比較 4&#xff0c;什么是光片&#xff1f;5&#xff0c;主要的算子。1&#xff0c;create_sheet_of_light_model2&…

高可用消息隊列實戰:AWS SQS 在分布式系統中的核心解決方案

引言&#xff1a;消息隊列的“不可替代性” 在微服務架構和分布式系統盛行的今天&#xff0c;消息隊列&#xff08;Message Queue&#xff09; 已成為解決系統解耦、流量削峰、異步處理等難題的核心組件。然而&#xff0c;傳統的自建消息隊列&#xff08;如RabbitMQ、Kafka&am…

人工智能核心知識:AI Agent 的四種關鍵設計模式

人工智能核心知識&#xff1a;AI Agent 的四種關鍵設計模式 一、引言 在人工智能領域&#xff0c;AI Agent&#xff08;人工智能代理&#xff09;是實現智能行為和決策的核心實體。它能夠感知環境、做出決策并采取行動以完成特定任務。為了設計高效、靈活且適應性強的 AI Age…

平替BioLegend品牌-Elabscience PE Anti-Mouse Foxp3抗體:流式細胞術中的高效工具,助力免疫細胞分析!”

概述 調節性T細胞&#xff08;Treg&#xff09;在維持免疫耐受和抑制過度免疫反應中發揮關鍵作用&#xff0c;其標志性轉錄因子Foxp3&#xff08;Forkhead box P3&#xff09;是Treg功能研究的重要靶點。Elabscience 推出的抗小鼠Foxp3抗體&#xff08;3G3-E&#xff09;&…

編程日志5.13

鄰接表的基礎代碼 #include<iostream> using namespace std; //鄰接表的類聲明 class Graph {private: //結構體EdgeNode表示圖中的邊結點,包含頂點vertex、權重weight和指向下一個邊結點的指針next struct EdgeNode { int vertex; int weight; …

PowerBI 矩陣實現動態行內容(如前后銷售數據)統計數據,以及過濾同時為0的數據

我們有一張活動表 和 一張銷售表 我們想實現如下的效果&#xff0c;當選擇某個活動時&#xff0c;顯示活動前后3天的銷售對比圖&#xff0c;如下&#xff1a; 實現方法&#xff1a; 1.新建一個表&#xff0c;用于顯示列&#xff1a; 2.新建一個度量值&#xff0c;用SELECTEDVA…

Prompt Tuning:高效微調大模型的新利器

Prompt Tuning(提示調優)是什么 Prompt Tuning(提示調優) 是大模型參數高效微調(Parameter-Efficient Fine-Tuning, PEFT)的重要技術之一,其核心思想是通過優化 連續的提示向量(而非整個模型參數)來適配特定任務。以下是關于 Prompt Tuning 的詳細解析: 一、核心概念…

杰發科技AC7840——如何把結構體數據寫到Dflash中

1. 結構體數據被存放在Pflash中 正常情況下&#xff0c;可以看到全局變量的結構體數據被存放在Pflash中 數字部分存在RAM中 2. 最小編程單位 8字節編程&#xff0c;因此如果結構體存放在Dfalsh中&#xff0c;進行寫操作&#xff0c;需要寫8字節的倍數 第一種辦法&#xff1a;…

CSS 選擇器入門

一、CSS 選擇器基礎&#xff1a;快速掌握核心概念 什么是選擇器&#xff1f; CSS 選擇器就像 “網頁元素的遙控器”&#xff0c;用于定位 HTML 中的特定元素并應用樣式。 /* 結構&#xff1a;選擇器 { 屬性: 值; } */ p { color: red; } /* 選擇所有<p>元素&#xff0c;…

Anaconda3安裝教程(附加安裝包)Anaconda詳細安裝教程Anaconda3 最新版安裝教程

多環境隔離 可同時維護生產環境、開發環境、測試環境&#xff0c;例如&#xff1a; conda create -n ml python3.10 # 創建機器學習環境 conda activate ml # 激活環境三、Anaconda3 安裝教程 解壓Anaconda3安裝包 找到下載的 Anaconda3 安裝包&#xff08;.ex…

現代計算機圖形學Games101入門筆記(十七)

雙向路徑追蹤 外觀建模 散射介質 人的頭發不能用在動畫的毛發上。 動物的髓質Medulla特別大 雙層圓柱模型應用 BSSRDF是BRDF的延伸。 天鵝絨用BRDF不合理&#xff0c;轉成散射介質。 法線分布 光追很難處理微表面模型 光在微型細節上&#xff0c;光是一個波&#xff0c;會發生衍…

chrome源碼中WeakPtr 跨線程使用詳解:原理、風險與最佳實踐

base::WeakPtr 在 Chromium 中 不能安全地跨線程使用。這是一個很關鍵的點&#xff0c;下面詳細解釋原因及正確用法。 &#x1f50d;原理與使用 ? 先說答案&#xff1a; base::WeakPtr 本質上是**線程綁定&#xff08;thread-affine&#xff09;**的。不能在多個線程之間創建…

hysAnalyser 從MPEG-TS導出ES功能說明

摘要 hysAnalyser 是一款特色的 MPEG-TS 數據分析工具。本文主要介紹了 hysAnalyser 從MPEG-TS 中導出選定的 ES 或 PES 功能(版本v1.0.003)&#xff0c;以便用戶知悉和掌握這些功能&#xff0c;幫助分析和解決各種遇到ES或PES相關的實際問題。hysAnalyser 支持主流的MP1/MP2/…

C++(21):fstream的讀取和寫入

目錄 1 ios::out 2 ios::in和is_open 3 put()方法 4 get()方法 4.1 讀取單個字符 4.2 讀取多個字符 4.3 設置終結符 5 getline() 1 ios::out 打開文件用于寫入數據。如果文件不存在&#xff0c;則新建該文件&#xff1b;如果文件原來就存在&#xff0c;則打開時清除…

系統架構設計(十七):微服務數據一致性和高可用策略

數據一致性問題 問題本質 由于每個微服務擁有獨立數據庫&#xff0c;跨服務操作不能用傳統的數據庫事務&#xff0c;面臨“分布式事務”一致性挑戰。 數據一致性策略 策略核心思想應用場景優缺點強一致性&#xff08;Strong Consistency&#xff09;所有操作實時同步成功&a…

os agent智能體軟件 - 第三彈 - 純語音交互

前兩期期我們發布了產品的初級形態&#xff0c;那時候還只能是“軟件開發者”在本地配置使用&#xff0c;或者運行起來有個大黑框&#xff0c;使用起來美觀度太差。 到今天大概20天&#xff0c;我們的第3版已經出來了&#xff0c;不僅做成了電腦端的exe軟件&#xff08;任何人…

鏈表原理與實現:從單鏈表到LinkedList

1.鏈表的概念及結構 鏈表是一種物理存儲結構上非連續存儲結構&#xff0c;數據元素的邏輯順序是通過鏈表中的引用鏈接次序實現的 。 可以形象的理解&#xff0c;在邏輯上來看&#xff0c;鏈表就像是一節節火車車廂。 鏈表的分類&#xff1a;鏈表的結構有很多種&#xff0c;單向…