程式設計師應該知道的七個圖形工具 - OSCHINA - 中文開源技術交流社區

2020-12-17 開源中國

在上一篇《全棧工程師的百寶箱:黑魔法之文檔篇》我們介紹了一些文檔工具,今天讓我來分享一下,我常用的一些圖形工具,主要有兩類:

說到流程圖還是再次提及一下,我們之前說到的Graphviz 。

Graphviz (英文:Graph Visualization Software的縮寫)是一個由AT&T實驗室啟動的開源工具包,用於繪製DOT語言腳本描述的圖形。它也提供了供其它軟體使用的庫。

它的主要特點是代碼生成圖像,並且足夠的簡單。

在我的那個「Web Developer 成長路線圖」裡,就是用這個工具生成下面這個複雜的圖形。

而其代碼特別簡單——和我們平時表達的手法是一樣的,即:

"包管理" -> "包發布" -> "自動部署""CLI" -> "部署""腳本語言(Bash,Perl,Ruby,Python etc)" -> "部署""腳本語言(Bash,Perl,Ruby,Python etc)" -> "構建""*nix" -> "軟體編譯" -> "部署""構建" -> "軟體編譯"

Graphviz有一個大的優點和弱點是:自動生成,導致畫線的時候很出現出問題。接著,我們就來看看手動畫線的例子。

在Windows世界裡,在這一類的工具裡面最常見的算是Visio:

遺憾的是,它並不支持在Mac OS上使用。而且,它並不在我購買的Office 365套裝裡。

在Mac世界裡,最好的工具算是OmniGraffle,就是很貴——我們平時使用的是公司的Mac電腦,使用盜版軟體是有法律風險的。

在GNU/Linux世界裡,我們使用Dia。

Dia 是開放原始碼的流程圖軟體,是GNU計劃的一部分,程序創立者是Alexander Larsson。Dia使用單一文件界面模式,類似於GIMP與Inkscape。 Dia將多種需求以模塊化來設計,如流程圖、網絡圖、電路圖等。各模塊之間的符號仍是可以通用的,並沒有限制。

順便安利一下,我最喜歡的作業系統OpenSuSE——簡潔、尾長、綠色。

OpenSuSE在KDE桌面下效果最贊了——因為KDE和OpenSuSE都是德國製造。總的來說,會比Debian系的Debian和Ubunt,及RetHat系的CentOS及Fedora穩定、漂亮。

令人遺憾的是這三個工具,我都用不了。Mac對X Windows的支持不是一般的差,於是我就需要別的替代工具。

在線流程圖:Processon

這個工具還是相當好用,至少是在GxFxW內比較快——我之前使用過Creately、draw.io、Gliffy等等的一些工具,只是隨著版圖的擴展,很多地區都已經「xx」了。

不過遺憾的是:他們沒有給我廣告費。

ProcessOn是一個在線協作繪圖平臺,為用戶提供最強大、易用的作圖工具!支持在線創作流程圖、BPMN、UML圖、UI界面原型設計、iOS界面原型設計等。

同樣的,在我的那個「Developer進階書單」中,就是用這個工具畫出規規矩矩的線。

並且,它還是跨平臺的。

各種圖: Word和Excel

由於翻譯和寫書的需要,我成了一個Office 365訂閱用戶。於是發現在Word等一系列的Office工具中,自帶了一個SmartArt的工具:

可以畫出很多很有意思的圖形,比如:

又或者是:

分分鐘就能畫一個的節奏。

腦圖: XMind

我想這個一般人都是知道的。

XMind思維導圖軟體被著名網際網路媒體Lifehacker評選為「最佳頭腦風暴和思維導圖工具」及」最受歡迎的思維導圖軟體」。

它有一個很大的優點是使用了全球最先進的Eclipse RCP 軟體架構,支持跨平臺使用。它有一個很大的缺點是使用了全球最先進的Eclipse RCP 軟體架構,導致了有點卡。

相比於流程圖什麼的,它只適合做腦圖。

如果你還在使用Eclipse,那麼你應該試試Intellij IDEA了。

D3.js(D3或Data-Driven Documents)是一個用動態圖形顯示數據的JavaScript庫,一個數據可視化的工具。

與上面的工具相比,這個工具可能沒有那麼方便。但是,作為一個數據可視化工具,它不僅僅可以做出各種炫酷的圖形。

還可以做出一個技能樹:

這個項目的GitHub見:https://github.com/phodal/sherlock

Leaflet 是一個為建設行動裝置友好的互動地圖,而開發的現代的、開源的JavaScript 庫。

雖然它與上面的圖形沒有啥關係,但是它帶了一個圖字啊。與Google Map原生的API,或者OpenStreet相比,它最大的優點是對行動裝置支持好。

並且,它也是一個可以根據數據(GEOJSON,地理數據)生成圖形的工具。

更多精彩內容歡迎關注我的微信公眾號:Phodal

相關焦點

  • JavaFX 2012:徹底開源 - OSCHINA - 中文開源技術交流社區
    其中將JavaFX完全開源赫列榜首——在2011年的JavaOne大會上,Oracle已做出保證將開源整個JavaFX平臺。 以下是Richard Bair列出的2012年JavaFX 10大目標: 1.
  • 被詛咒的程式設計師的七宗罪 - OSCHINA - 中文開源技術交流社區
    七宗罪(Seven deadly sins),13世紀道明會神父聖多瑪斯·阿奎納列舉出各種惡行的表現。
  • Delta Lake 進入 Linux 基金會 - OSCHINA - 中文開源技術交流社區
    「將 Delta Lake 引入 Linux 基金會的中立組織之下,將有助於依賴該項目的開源社區開發解決存儲和處理大數據(本地和雲端)的技術」,Linux 基金會戰略計劃副總裁 Michael Dolan 表示。
  • 最讓程式設計師懊惱的 10 件事 - OSCHINA - 中文開源技術交流社區
    寫文檔沒錯,的確有很多文檔生成工具,但我的經驗告訴我,這些工具都是只適合生成 API 文檔,以供其他程式設計師參考。如果你開發的軟體是很多人在日常生活中都會用到的,那麼你最好寫一些即使外行人也能理解的文檔(例如,應用程式如何工作、故障診斷指南等等)。好吧,有些程式設計師可不樂意幹這事兒。大家經常做的是,快速瀏覽開源項目,然後開始不斷的搜尋文檔來獲取幫助。
  • 關於編程裡的那些 ABCDEFG - OSCHINA - 中文開源技術交流社區
    它是一款開源 JavaScript 函式庫,由 Google 和它的社區來維護,用來協助單一頁面應用程式運行的。它的目標是透過 MVC模式(Model-View-Controller)功能增強基於瀏覽器的應用,使開發和測試變得更容易。函式庫讀取包含附加自定義(標籤屬性)的 HTML,遵從這些自定義屬性中的指令,並將頁面中的輸入或輸出與由 JavaScript 變量表示的模型綁定起來。
  • 10個習慣助你成為一名優秀的程式設計師 - OSCHINA - 中文開源技術交流...
    當面臨一個問題,優秀的程式設計師應該知道如何花很少時間去查驗和解決手頭的問題。2、保持初學者心態技術發展如此之快,需要不斷地學習新技術。 因此,當沒有經驗的時候,你需要適當地用新的視角看待事情。優秀的開發人員享受作為新技術的初學者的過程,並掌握自我教育的節奏,以儘快自給自足。
  • 22 個免費的圖表、流程圖工具 - OSCHINA - 中文開源技術交流社區
    餅圖、柱狀圖、線圖和許多其他的圖形是非常重要的用來表示數據和溝通的信息,並可展示兩個實體之間的關係。而這些圖形如果用在 Web 上則有助於吸引訪客的注意力,並有效地解釋相關數據。
  • 開源社區的「忌諱」話題 - OSCHINA - 中文開源技術交流社區
    加拿大資深開源技術記者Bruce Byfield較早前發表了一篇名為「開源社區從來不想承認的九大事實」(9 Things That Are Never Admitted About Open
  • 華為莊表偉:三代開源社區的協作模式 - OSCHINA - 中文開源技術...
    隨著Web技術的不斷成熟,開源社區也開始創造一個又一個的Web開源項目,其中Web化的項目管理工具,如雨後春筍般冒了出來。在wikipedia上,issue-tracking systems列出了55個,project management software列出了152個,其中開源的也有30+,open-source software hosting列出了22個,堪稱蔚為壯觀。
  • 程式設計師真正的價值 - OSCHINA - 中文開源技術交流社區
    把這段程式設計師之間的對話翻譯一下,大致是這麼個故事:一 位讀者有一個32位的 Unix 可執行文件,可以在某種版本的 Linux 伺服器上正常運行,運行這個文件作用就是起個進程,開埠,然後與其他程序進行交互。但是這個文件拿到 Mac 上完全沒辦法運行。就在他趴在 Mac 上愁腸百結萬念俱灰的時候,突然想到了「池老師」。
  • 開源春天,此時不來,更待何時? - OSCHINA - 中文開源技術交流社區
    簡單地講,其實這背後都是利益問題,以這些開源項目社區的話來講,他們都不想讓一些雲廠商「坐收漁翁之利」,然而實際上,這些被指責的雲廠商真的都違反了開源協議內容嗎?這可真不好說。在這些社區宣布項目修改開源協議之後,遭到了各種反對聲音。
  • Git 2.4.3 發布 - OSCHINA - 中文開源技術交流社區
    Git是一個開源的分布式版本控制系統,用以有效、高速的處理從很小到非常大的項目版本管理。開源中國 Git 代碼託管平臺:http://git.oschina.net/Windows下的Git請看這裡:http://www.oschina.net/p/msysgitGit 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟體
  • 開源軟體蓄勢待發 - OSCHINA - 中文開源技術交流社區
    群集中的每臺伺服器都知道每個文件存儲在哪裡。GlusterFS可在商品硬體上運行,存儲容量可從幾個TB擴展到多個PB。Gluster公司的首席技術官Anand Babu Periasamy稱:「由於我們沒有獨立的元數據伺服器,因此我們在許多地方沒有進行更新,這可以讓我們在無需擔心可靠性的情況下擴展到很大的規模。」
  • Netflix 的開源文化與技術 - OSCHINA - 中文開源技術交流社區
    Netflix利用開源或者自己開發的技術,讓公司能夠在分布於全世界50多個國家的伺服器上進行持續地構建和集成;能夠對用戶所產生的海量行為數據進行分析挖掘從而更好地推薦和改善自身服務;同時能夠通過性能剖析和安全審計保護用戶的隱私和數據,下面就讓我們來盤點一下Netflix所使用或貢獻的開源技術。
  • 程式設計師常用的15個學習交流網站
    所以,只有通過不斷學習和交流,不斷提升自身價值,收入和發展空間才有可能獲得突破性增長。下面是華哥整理的15個程式設計師常用的學習交流網站(排名不分先後),分享給你,希望對你有所幫助。6、開源中國社區-中文開源技術交流社區(https://www.oschina.net/)開源中國成立於2008年8月,是目前國內最大的開源技術社區,擁有超過200萬會員,形成了由開源軟體庫、代碼分享、資訊、協作翻譯、碼雲、眾包、招聘等幾大模塊內容,
  • Gitbook,這個開源出書平臺了不起 - OSCHINA - 中文開源技術交流社區
    GitHub 的眾包方式值得借鑑,今天在產品發現社區 MindStore 上推薦的 Gitbook 就是一個從很多方面都與 GitHub 類似的網絡出版平臺,作者可以方便利用各種數字工具(Windows、Mac OS、iOS、Android)在上面撰寫書籍的章節,然而整理成冊,再形成電子書,進行出版。
  • 給年輕程式設計師的建議 - OSCHINA - 中文開源技術交流社區
    偶爾的,我會被人問道:如何成為一名優秀的程式設計師,更或者,如何成為一名程式設計師。每次人們問起,我都力圖給出不同的答案。
  • 盤點微軟最應該開源的 15 款產品 - OSCHINA - 中文開源技術交流社區
    他們先是向Linux內核貢獻代碼,還開放了.NET核心、Visual Studio Code編輯器、甚至是Chakra JavaScript引擎(IE瀏覽器和Edge所用)的原始碼,而在和公司內部的開發者進行了漫長的談判之後,微軟最近又對博客工具Windows Live Writer進行了開源。可實際上,作為一家軟體巨頭,微軟還有不少產品都應該進行開源。
  • Hutool 2.16.0 發布,Java 工具集 - OSCHINA - 中文開源技術交流社區
    Hutool 是一個Java工具包,提供了豐富的文件、日期、日誌、正則、字符串、配置文件等工具方法,並封裝了一套簡單易用的ORM框架。 增加Matcher接口,用於抽象接口邏輯新建crypto包,提供摘要算法和對稱加密算法CollectionUtil增加count方法CollectionUtil中關於數組方法全部遷移至ArrayUtil擴充日期工具
  • 60% 的企業代碼庫包含開源漏洞 - OSCHINA - 中文開源技術交流社區
    近日,Synopsys 公司的黑鴨軟體(Black Duck Software)發布了開源安全與風險分析(OSSRA)年度報告,