1.PowerBuilder做的线制史上最强的矢量画软件VISIO也要低头
2.JAVA制图软件中:10款免费而优秀的图表JS插件
3.asp页面显示mapinfo地图源码
4.å
è´¹å¨çº¿ç±»å¾ç»å¶-å¦ä½å¨å¾ä¹¦ç®¡çç³»ç»ä¸è¾åºå¾è¡¨
5.web前端教程:在React项目中使用ECharts图标库制图
PowerBuilder做的史上最强的矢量画软件VISIO也要低头
谁说PowerBuilder 做不了图形处理,现在这个图形软件就可以是图源用PB做出来的,而且运行稳定与快速,码线如果配以PB强大的制图数据库功能,那么就可以做出各种组态软件,源码用而且辅以报表的线制前端聊天源码强大功能,那么在做开发电力,图源煤炭,化工,仿真,自动化监控,组态,工业监控软件,图形建模,图形管理,图形分析,GIS系统,CAD制图,工作流,中文表格,表单,工程绘图等应用。方面谁还能匹敌呢?
已经有许多公司用这样的码线模式来开发PowerBuilder 的图形应用:很多电力公司与工业监控公司。 非常方便地建造基于图形的制图界面,制作各种图形元件,实现图形管理,图形建模,制作监控系统,表单系统,绘图系统,流程设计,CAD软件等。
PowerBuilder 做的源码用史上最强的矢量画图软件(VISIO也要低头)
图形文件是XML的,可以在WEB上使用。线制
有了这东东,图源就可以敢接一样图形相关的码线项目了,这也是制图一个自己能力应用的机会。
图形的源码用特点:
图形文件和图形库是统一的 XML 格式
一般图形软件的图库不外乎采用以下几种技术:
① 程序中自带图库。这适用于特定的专业领域,如果需求发生变化,程序必须改变,目前许多自行开发图形系统的软件公司采用这种技术,一来需求相对固定,二来实现也较为简单,这种技术的缺点在于,以后需求发生变化,程序经常需要修改。
② 专门做一个图库设计工具软件,图库有专门的格式。这个已经比前面进了一步,起码用户似乎可以“自定义图库”了。给用户的感觉要好一点。但是这种技术的缺点在于,图库中的图形都是“组合图形”,只能做一些简单的状态变化。而象曲线图、饼图、棒图、仪器仪表等图形就无法实现了。
③ 插件技术。这个就更进一步,目前在许多工业组态软件的图形系统中采用。为了实现上述各种复杂的组合图形,用外部程序辅助实现,有的是自己定义接口方式,好一点的采用 ActiveX 标准接口。这种技术的缺点在于,你常常需要很多外部插件,如果厂家没有提供某个图形,就需要请厂家帮忙解决,或者利用厂家提供的接口开发规范用 C++ 等语言编写插件。可想而知,这种技术几乎无法应用于互联网。而且用户受限于自己的开发水平,无法真正创造他想要的东西。此外,如果厂家采用标准 ActiveX 技术的话,还有一个先天性缺陷,那就是,这种外部插件无法自由缩放、自由旋转,无法和其他图形协调存在,另外还有整体打印方面的问题。
④ 文档格式。许多厂家的图形文档采用自行规定的二进制格式,这种格式的文档读取速度较快,但是安全性、可维护性很差。在经常性的修改中,难免遇到电脑停电等事故,恢复正常打开电脑后,文件却可能无法读取了,因为是二进制格式,就不知道哪里出了问题,自从有了XML文档格式,采用它存储数据就成为最佳的选择方案,你用其他 XML 阅读软件甚至记事本就可以轻松编辑这种文档。
⑤ Visual Graph 采用图形文档和图库文档统一的 XML 格式,你可以任意自由地画图,自动对焦算法源码任意设计属性、函数、事件,这样相当于给图形赋予了生命,设计好的图形文件马上就可以被当作图库来使用,这样通过多层嵌套,就可以设计非常复杂的图形出来,这样紧凑的结构、巧妙的设计,也只有 Visual Graph 才有。
2.一个文档包括多个页面图形
你可以在一个文档内包含多个画面,而当这个文档被用作图库的时候,每个画面又被当作一个个元件来使用了,整个系统形成完备的整体。
3. 页面支持多图层,图层可以隐藏或锁定
画很大的图时,有可能需要建立多个图层,例如地理图上的道路、电力设施、水管、商店、*部门等可以分别设定在不同的图层上,图层其实就是页面。
4. 基本图形只有三种(文字、形状、线条),却可以制作种类繁多的元件
一切复杂的图形元件都来自于这三类图形,基础图形越少,整个系统的架构越灵活可靠。如果把各种专用图符等放在系统内部,当作不同的类别实现,这样,系统结构就很松散而且难以学习了。
5. 可以进入元件内部编辑其细节
需要专门的图库编辑软件麽?不需要,只要在Visual Graph集成环境中,就可以随时进入元件的内部,修改其细节。
6. 线条编辑,允许插点,删点,画曲线,直线,独特的副线功能
允许在线条上插入顶点,删除顶点。线条的每个顶点除了有 x 和 y 两个坐标值以外,还有一个顶点属性值,用来描述这个顶点的画法。通过简单改变顶点的属性,一条折线可以变成曲线,可以变成两段不相连接的折线。此外,软件还可以通过添加副线,画出花样繁多的线条,如铁路线、长城线、国界线等等。
7. 直接在画面上编辑文字,文字自由旋转
文字编辑方式自然,即使文字单元有旋转,编辑方式不变,甚至输入光标也会跟着旋转。
8. 无数次的 Undo 和 Redo
能够对绝大多数操作进行几乎无数次的撤销和恢复,根据内存状况采用不同的调度策略,许多方面,尽管用户可能很少用到,但都严格地保证了安全。
9. 内置专门的 Visual Graph 图形语言
内置专门为图形系统设计的纯面向对象脚本语言,结构简单,语法只有简单的几条,变量也不需要定义,直接任意赋值。比起其他流行的编程语言,更加简洁明快、高效。
. 每个图形允许定义背景,吾爱源码官网可以透明、缩放
每个基本图形都有和网纹属性,二者结合在一起,可以实现的拉伸、平铺、透明等。整个视图文件也有同样的背景和网纹设置。
. 和许多绘图软件图形互相拷贝粘贴,可以编辑 EMF 格式的图形
EMF 是各种矢量图形软件相互交换格式的一种标准图形格式,象 Word , Visio , Autocad,Coreldraw 等都支持 EMF 格式的存取。 Visual Graph 可以把这些软件的图形拷贝后粘贴进来进行编辑,也可以把图形拷贝到这些软件中去进行编辑(特殊粘贴)。
. 文档打印纸可以自由设定大小和缩放比例
打印无级缩放,多大的图形都可以放在一张纸上打印,而打印效果直观地显示在画面上,只要显示打印纸,就可以清楚看到打印纸的位置,你可以用鼠标改变它的位置和大小。打印纸越小,相对来讲打印出来的图形就越大,反之,打印纸越大,打印出来的图形就越小,而所包括的图形也更多。不需要模拟显示。
. 打印和设备无关
画面打印情况只与打印纸、图形的相对位置有关,与设备无关。所有页面共用同一张打印纸。
. 支持图形分组
允许建立若干个图形组,这些组被保存进文件,这样可以方便地对图形进行分组管理和编程。例如,在一幅地图上,把所有房子建立一个数组,把所有公用设施按照类别分别建立一个数组等。
. 多种连接线,十分灵活,可以建立图形间的拓扑关系,自由添加连接点
有直线连接线,曲线连接线,平直连接线。元件内部可以自由设置任意个数的连接点,图形的连接点数目以及每个连接点关联的图形、连接点的位置都可以用程序访问,也可以用程序设置两个图形相连接。可以编写图形拓扑分析程序。
. 多种箭头风格,并可以任意自定义箭头
内置常用几种箭头风格,满足大多数时候的需要,如果箭头不够,可以修改箭头库文件(arrows.tbl),实际上,箭头库也是图形文件,也可以在 Visual Graph 中进行编辑。
. 自定义线型
线条有多种表现形式,可以修改每种线型的具体形状。
. 自定义网纹
图形填充图案全都可以自行设计,还有透明网纹、过度填充网纹、填充网纹等,能够满足绝大多数需要,网纹可以自定义样式。
. 支持多种网格类型定位,但优先连接关系定位
图形可以通过网格方便定位,默认情况下,图形左上角和网格保持对齐,如果图形在某处有连接点,优先把连接点放置在网格上。这也是为了更方便地绘制拓扑图。
. 支持文字和其他图形两种对齐方案
文字是不允许用鼠标拖动重叠的,我们认为文字重叠就互相看不清楚了,所以就尽量防止这种状况的发生。所以操作若干文字单元左对齐就不会出现象其他图形那样堆叠的情况,而出现一种类似表格操作的wince6 源码形式。
. 图形支持任意角度自由旋转,旋转中不改变图形其它逻辑
任何图形元件都可以任意角度自由旋转。旋转后,图形的逻辑关系不变,运算程序能够正常运行。例如棒图、饼图、曲线图、甚至页面上所有图形一起都可以随意旋转而正常工作。过渡填充、、箭头、文字标注、文字光标自动旋转。
. 基本图形、图形元件均可以自定义文字标签
普通的矩形、椭圆等形状以及线条都可以添加一个文字标签,线条上的文字标签有多种排版方式,元件可以定义内部哪些文字单元是标签。作为标签的文字单元可以直接编辑,不用进入封装好的元件内部。
. 自定义多类型存储属性(整数、小数、逻辑、字符串)
当程序员想给图形添加一些特定的数据时,可以给这个图形随便增加自定义属性,对自定义属性的读写、存储等操作和对固有属性没有区别。
. 自定义任何属性,类似流行编程语言中“属性”的概念
把一些流行编程语言( Delphi 、 C# 等)的“属性”概念引入到 Visual Graph 中,从而使得系统变成了一种似乎无所不能的面向对象编程语言。你只需要简单地修改一个属性的值,就可以驱动图形做任何复杂的变化。
. 自定义函数(私有、公有函数)
既然有脚本,就离不开自定义函数,函数按照作用域的不同,分为私有函数、公有函数、引出函数三种,如果一个函数只想被内部的其他图形访问,可以使用私有函数,如果允许外部图形访问,可以使用公有函数,如果这是一个触发事件,则可以使用引出函数。这些非常符合一般面向对象编程语言的习惯。函数与过程的区别仅在于是否在 return 后面有返回值。函数参数没有显式的类型,会根据调用者的参数决定。这样设计的结果,使得脚本在形式上更加简洁。
. 众多的图形操作事件,例如在鼠标点击、移动、图形缩放、创建、删除时触发
每个图形都有自己的事件,例如,在运行状态下,当鼠标单击时,会优先执行最上面那个图形的鼠标单击事件中的脚本程序。图形创建时、删除时、绘制后、鼠标移入移出等都有相应的脚本事件。如果程序员只想把 Visual Graph 当作一般控件使用,也可以利用控件本身的众多事件。这两套事件体系是不一样的,每个图形都有自己的事件,这些事件是 Visual Graph 内部规定的,而 ActiveX 的事件是图形控件整体的事件,遵循国际标准接口。
. 无级别缩放,flash闪动按钮源码比例巨大,局部放大,整页、宽度缩放
图形任意放大和缩小 ,由于采用浮点数,放大很多倍后,可以精确编辑图形。整页、宽度缩放主要应用于报表场合,当画面上显示打印纸的时候,就会看到它的作用了。当图形缩放的时候,字体会缩放,但是线条的宽度可以设定是否缩放(环境设置),有的时候,放大以后要对细节进行编辑,应该设定线条宽度禁止缩放,而打印的时候,则应该使用线条宽度缩放选项。有一种线宽( 0 )被设置成无论如何缩放,都只是一条细线,这用来描述某些轮廓。
. 图形可以设定是否打印
打印区域内的某些图形可能仅为了显示之用,并不想打印出来,则可以设置图形不允许打印。
. 整体或局部图形导出 BMP 、 EMF 格式
常常会有这样的需求,选择一部分图形,允许把这部分图形生成。
. 支持读取互联网服务器图形文件
直接读取互联网上的图形文件,无需下载。
. 支持图形从内存或数据库读写
整个 Visual Graph 文件是 XML 文档格式,程序员可以把文件存放在数据库中,进行读写。 每个图形也有自己的XML格式,可以单独存取。
. 支持移动图形到屏幕中间,滚动屏幕,手抓屏幕滚动
有一些有关屏幕操作的函数,帮助程序员更好地控制画面显示的内容。
. 用程序或者脚本绘图
这也是基本功能,可以用脚本或者其他程序动态生成各种图形、页面、单元组、甚至图形之间的连接关系。
. 支持标尺,允许自行设计标尺
Visual Graph 的坐标体系是逻辑坐标体系,默认的标尺上面显示的也是逻辑坐标值,也就是屏幕象素的坐标,如果用户的系统要求使用不同的坐标系,可以自行换算,主要是改用自己的标尺就可以了。关于如何制作自己的标尺,也提供源代码作参考。系统提供了两种坐标系,一种是以左下角为原点的,另一种是以左上角为原点的。
. 图形锁定和解锁,按住 ALT 键可以操作加锁的图形
图形基本功能,锁定后的图形,不能简单地用鼠标选中和编辑。
. 支持自定义提示窗口
每个图形(包括页面)都有一个 Hint (提示)属性,设置这个值,当鼠标在图形上面停留一会,在鼠标附近就会出现一个小窗口显示这个字符串,每个图形文件都内置一个提示信息窗口 HintWindow ,用户可以对此进行编程,例如在 HintWindow 上面画图。
. 元件自定义连接点
元件可以添加任意多个连接点,连接点可以设定是主动连接还是被动连接。
. 元件自定义*点
在元件设计时,可以放置任意多个控制点,将来这些控制点将允许用户鼠标拖动操作,当鼠标拖动操作的时候,会执行 OnNodeChange 事件,在元件内写好这个事件的脚本程序,元件就可以按照你的意愿变化形状了。如果一个元件定义了两个以上的*点,并且这些*点又同时是连接点时,这个元件将来不会出现选择框。
. 支持各种仪器仪表、刀闸、开关、信号灯开发
给这些设备图形添加自定义属性,仪器仪表可以添加最小值、最大值、当前指针值等属性,改变这些属性,仪器仪表就会发生变化(例如指针旋转)。刀闸、开关可以添加开关属性,改变这个属性,开关的样式也发生相应的变化。信号灯可以添加当前状态属性,允许根据属性不同,信号灯的状态发生变化。这些在其他图形软件里面非得使用插件才能实现的功能,在 Visual Graph 看来,却是如此简单。
. 支持各种按钮的开发
由于图形有鼠标左键按下和放开的事件,只要在鼠标按下的事件里让图形产生一个变化,在鼠标放开时恢复这个变化就可以了。
. 支持曲线图、棒图、饼图开发
系统自带了这方面的例子或者图库,可以参照使用,自行修改。即使图形多么复杂,都不需要插件。
. 支持报表开发,表格高度智能,移线、合并、插入或删除表格行列,多种表格边框
Visual Graph 对表格的概念有一个突破,所谓表格,就是若干文字单元拼凑而成的一组图形。可以移动里面的线条、划线分割、合并、插入或者删除表格行列,整体修改一部分表格的边框等等,这些操作由系统内部通过一定的智能规则判断实现。其中的任何一个文字单元都是独立的个体,这样,对于程序访问非常有利。如果熟练掌握了 Visual Graph,就不需要再用其他报表控件,尤其是在互联网上使用时,与图形界面自成一体,非常节省资源。
. 允许混合编程,互相调用,不仅您的程序可以操控 VG 的一切技术,而且 VG 的脚本可以调用执行您的任何程序
在 Visual Graph 中出现的任何图形、任何属性、任何函数都是可以在自己程序中访问的。
另外, Visual Graph 可以访问程序员自己语言中的函数,这是一个非常特殊而且重要的功能,因为现有的脚本语言不可能穷尽所有的功能,事实上,它是一种非常简单的语言,所含功能性的函数很少,因此,在某些情况下,你可能需要扩充这种脚本语言的功能。例如日期访问、数据库访问等等。使你不用担心将来功能不够怎么办的问题。
. 支持扩充功能函数
Visual Graph 可以调用外部函数库中的函数,例如 Windows API 函数、DLL函数等。
. 可以制作对话盒、子窗口、弹出式窗口、菜单等窗口元素。
在很多情况下,用 Visual Graph 做这些窗口元素比起用编译语言做有更多的优势,因为它不是编译语言做死的,而是外置的,易于维护修改的,这样,以后可以轻而易举地变换软件的功能。只要制作好足够多的图形基础控件,甚至能做应用软件开发。
. 元件的链接和嵌入
如果图上有大量相同的图形(比如很多刀闸),图形采取链接方式比较好,这样能够大大减少文件的体积,更快地载入文件。图库改变后,下次载入图形文件也相应会反映这种改变。
. 提供图形的全部 COM 接口
COM 接口能够方便程序的编写,接口属性和函数在基本形态上和 Visual Graph 内部的脚本语言完全一致,这样有利于学习和记忆。只可能因所用编程语言的不同,而有些形式上的改变,例如在 VC 中,没有属性这个概念,所有的属性都被变成 Get 和 Set 函数了。
. 可以设定图形的透明度
每个图形或者元件均可以设置透明度。
. 可以修改为数众多的系统参数
系统字体、光标形状、箭头、线型、网纹等许多重要参数均可以改变(注意不是属性的改变,而是常量的改变),改变系统参数后,对所有图形均起作用。
. 根据自己的需要选择合适的图形显示驱动程序
通过设置,可以使用不同的图形显示驱动程序,在速度或者精度等方面达到最佳平衡。
. 包括一个功能非常齐全的属性列表控件,这样对于图形程序的开发就更方便了
只通过一条简单的命令,就可以把图形和属性列表控件联系起来,在属性列表控件中对图形进行全方位的编辑。这个属性列表控件也是一个图形文件,用户熟练以后可自行编辑修改。
. 支持界面设计、插件等
可以自由开发诸如菜单、工具栏、按钮、列表框、下拉框、检查框等 windows 界面元素。
. 非常适合应用于互联网
软件发布包特别小(压缩以后只有 k 左右),功能特别全,非常适合应用于互联网软件开发。
JAVA制图软件中:款免费而优秀的图表JS插件
本文介绍了款免费且优秀的图表JS插件,以满足开发者在制作图表时的需求。这些插件使用HTML5技术,包括canvas、svg等,提供了一套规范且成熟的图表制作方案。
首先介绍的是国产插件ichartjs。它基于HTML5的canvas标签绘制图形,提供饼图、环形图、折线图、面积图、柱形图和条形图等多种图表类型。ichartjs设计简洁、直观,适合HTML5应用开发。
接着是百度前端团队开发的Echarts。它具备拖拽重计算、大规模数据模式、值域漫游等特性,支持折线图、柱状图、散点图、K线图等图表类型。Echarts能够高效处理大量数据,实现直角系图表秒级出图,提供直观的数据展示和用户交互功能。
Loongchart是另一款国产插件,兼容IE7和IE8,支持多种绘图类型,包括折线图、柱状图、散点图、K线图等。它提供动画、皮肤设定等功能,并支持导出,具有良好的跨平台兼容性。
Chart.js是一款小巧轻便的插件,支持多种图表类型,如饼图、折线图、柱状图等。虽然数据交互功能有限,但作者计划逐步完善。
Jqplot是支持现代浏览器和IE7、IE8的插件,提供多种图表类型,适用于需要兼容旧版本IE的项目。
gRaphaël插件支持现代浏览器以及IE6.0以上版本,具有良好的兼容性。
RGraph提供现代浏览器兼容性,支持IE7和IE8。
CanvasXpress支持多种图表类型,API齐全,适合制作专业级图表。
AwesomeChartJS插件支持的图表类型相对较少。
Dygraphs是一款快速、灵活的开放源代码JavaScript图表库,具备处理大量数据、交互功能、支持错误条和置信区间以及高度自定义等特性。Dygraphs兼容所有主流浏览器,甚至支持移动设备上的缩放功能,具有活跃的社区支持。
asp页面显示mapinfo地图源码
: MapInfo 地图对象
MapInfo地图对象生成与操作
MapInfo地图对象与地理实体
用MapInfo地图对象表示地理实体:依据比例尺和属性数据的需要定义地理实体地图对象。道路可以是线对象或面对象,按属性数据进行分段和分块。
设计地理实体的Mapinfo表示:首先对区域内所要管理的地理实体依据MapInfo地图对象的要求进行分类,设计分层方案,定义地理实体的属性字段名称、类型、大小等。
点对象表达的地理实体:各类控制点、测量点、高程点、点位符号、居民地(小比例尺)等。
线对象表达的地理实体:单线河流(有方向)、各类管线、线状符号(如双线道路、铁路、陡坎、围墙、公交线路等)等。
面对象表达的地理实体:境界(区)、自然或人文分区、城市道路、房屋、双线河流、湖泊等。
复合线对象:由多个单独的线对象经合并而成,可定义随比例尺变化的的点状符号(块符号)、线状符号,也可表达河系、网络等。
复合面对象:由多个单独的面对象经合并而成,如群岛、湖泊群等。
地图对象操作
单个点对象操作:显示特性(符号类型、大小、颜色、立体效果等)的修改、坐标数据的修改(即移动位置)、复制(增加对象)、删除,单个点的缓冲区。
多个点对象操作:选中多个点对象(不同类型、全选),统一修改显示特性(大小、颜色等),整体移动、复制、删除,多个点的缓冲区(整体、独立缓冲区)。 中国3S吧 3s8.cn
单个线对象操作:显示特性(线符号类型、颜色、粗细等)的修改,整体复制、移动、删除,增加节点,加入与其它对象的交点,单个节点复制、移动、删除,多个节点的选择(Ctrl、Shift+鼠标点选节点),多个节点复制、移动、删除,复制单个节点产生点对象,复制多个节点产生线对象,单个线对象的缓冲区,封闭折线的缓冲区,复合线对象(有多个线对象合并而成),线对象的分割、擦除、擦除外部,线对象转换成面对象。
多个线对象操作:选中多个线对象(不同类型、全选),统一修改显示特性(粗细、颜色等),整体复制、移动、删除,多个线对象的整形节点,选择多个节点的不同之处,多个线对象的合并、缓冲区等。
单个面对象操作:显示特性(边线符号类型、颜色、粗细,填充类型、前景色、背景色等)的修改,整体复制、移动、删除,增加节点,加入与其它对象的交点,整形节点功能,单个面对象的缓冲区,复合面对象(有多个面对象合并而成),面对象的分割、擦除、擦除外部,面对象转换成线对象。
多个面对象操作:选中多个面对象(不同类型、全选),统一修改显示特性(边界线、填充颜色等),整体复制、移动、删除,多个面对象的整形节点,选择多个节点的不同之处,多个面对象的合并、分割、擦除、缓冲区等,多个面对象转换成线对象,复合面对象转换成复合线对象,复合面对象转换成多个独立的面对象。 专业的3S站 3s8.cn
辅助线、辅助面、辅助层:为更好地以地图方式显示对象。道路、等高线间断处的处理(双线河流、桥梁、过桥公路关系的处理)。
在层间交换数据方法:不同层之间拷贝、移动单个或多个地图对象。
属性数据结构定义与修改 定义与修改地理实体的属性字段名称、类型、大小等。
快速增加新层的方法(使用装饰图层、保存装饰层对象)。
投影变换 使用Save as进行投影变换。
建立自己的符号库
点符号库:BMP图象、Windows符号字库、Symbol工具;
线符号库:使用线型编辑器;
面符号库:使用区域编辑器;
MapInfo的专题制图功能(MapInfo的特色之一)
å è´¹å¨çº¿ç±»å¾ç»å¶-å¦ä½å¨å¾ä¹¦ç®¡çç³»ç»ä¸è¾åºå¾è¡¨
ç±»å¾æä¹ç»
ç»ç±»å¾ä¸è¬æ以ä¸3个æ¥éª¤:ç¡®å®ç±»,è¯å«ç±»çå±æ§åæä½,ç»ç»ç±»å¹¶ç¡®å®å ¶å ³ç³»ãå¦ä¸:
1ãç¡®å®ç±»ãç¡®å®ç±»æ¯éè¿å¯¹è½¯ä»¶éæ±çåææ¥å®æçã常ç¨çæ¹æ³å æ¬è¡ä¸ºåæãåè¯è¯å«æ³ãCRCåæççãå ¶ä¸çåè¯è¯å«æ³å°±æ¯é¦å æéæ±æè ç¨ä¾æè¿°ä¸çææçåè¯æ è¯åºæ¥,æå®ä»¬ä½ä¸ºåéç±»,ç¶åå对è¿äºåéç±»é个è¿è¡èå¯,å»æä¸äºä¸å¿ è¦çç±»ã
2ãåºåæ¯ç±»è¿æ¯å±æ§ãæäºæ è¯åºæ¥çåéç±»,å®é ä¸æ´éåä½ä¸ºç±»çå±æ§,èä¸éåå®ä¹æç±»ãæ¯å¦ä¼åç¼å·,ä¼åç±»åè¿äºå°±éåå®ä¹ä¸ºä¼åç±»çå±æ§ã
3ãç»ç»ç±»å¹¶ç¡®å®å ¶å ³ç³»ãç±»ä¸ç±»ä¹é´çå ³ç³»æä¾èµãæ³åãå®ç°åå ³èãå¨è¯å«åºäºç±»ãç±»çå±æ§åæä½ä¹å,å°±è¦ç»ç»è¿äºç±»å¹¶ç¡®å®ç±»ä¹é´çå ³ç³»ãæ们é常æ¯ä»¥ç±»å¾çå½¢å¼æ¥æè¿°ç±»åå ¶å ³ç³»ã
ç»ç»ç±»å¹¶ç¡®å®å ¶å ³ç³»é常å为以ä¸4个æ¥éª¤:
1ãç¡®å®ç±»ä¹é´çå ³èå ³ç³»å¹¶æ è¯å ¶å¤éæ§ã
2ã使ç¨ç»§æ¿å ³ç³»ç»ç»ç±»ã
3ãç¡®å®æ´ä½åé¨åçå ³ç³»ã
4ãç»å¶ç±»å¾ã
å¦ä½å¨å¾ä¹¦ç®¡çç³»ç»ä¸è¾åºå¾è¡¨weixin_
å ³æ³¨
å®æå¾ä¹¦ç®¡çç³»ç»ç±»å¾çç»å¶_å¦ä½å¨çº¿å è´¹ç»å¶åç±»å¾å½¢
--::
weixin_
ç é¾5å¹´
å ³æ³¨
ä»ç»ä¸ä¸éè¿å¨çº¿å è´¹å¶å¾ç½ç«FreedgoDesignç»å¶åç±»å¾å½¢çæ¹æ³ã
ä»ä¹æ¯FreedgoDesign?
FreedgoDesignæ¯ä¸in款å¨çº¿ç»å¶ä¸ä¸å¾å½¢çç½ç«ãFreedgoDesignå¯ä»¥ç»å¶åç§ç±»åçå¾å½¢,é对ä¸å¡é»è¾çæµç¨å¾,软件设计ER模æ¿,å·¥ä½æµ,åç§äºå¹³å°çç³»ç»é¨ç½²æ¶æå¾å æ¬é¿éäºãAWSäºãè ¾è®¯äºãOracleãAsureäºãIBMäºå¹³å°çã
使ç¨
ç¨æ·éè¿æµè§å¨è®¿é®ç½å:
ç¹å»å¨çº¿å¶å¾,è¿å ¥å¾å½¢è®¾è®¡å·¥å ·é¡µé¢å³å¯å¨çº¿å¶å¾.
éæ©å¶å¾ä¸åç±»åçå¾å½¢,请ç¹å»é¡µé¢ä¸é¢+æ´å¤å¾å½¢,éæ©ç¸åºçå¶å¾ç±»åãå¦ä¸å¾:
å¯ä»¥ç»å¶åªäºå¾è¡¨UML
UMLç»ä¸å»ºæ¨¡è¯è¨(è±è¯:UnifiedModelingLanguage,缩åUML),æ¯ä¸ç§å¼æ¾çæ¹æ³,ç¨äºè¯´æãå¯è§åãæ建åç¼åä¸ä¸ªæ£å¨å¼åçãé¢å对象çã软件å¯éç³»ç»çå¶åçå¼æ¾æ¹æ³ãUMLå±ç°äºä¸ç³»åæ佳工ç¨å®è·µ,è¿äºæä½³å®è·µå¨å¯¹å¤§è§æ¨¡,å¤æç³»ç»è¿è¡å»ºæ¨¡æ¹é¢,ç¹å«æ¯å¨è½¯ä»¶æ¶æå±æ¬¡å·²ç»è¢«éªè¯ææã
å¨UMLç³»ç»å¼åä¸æä¸ä¸ªä¸»è¦ç模å:
åè½æ¨¡å:ä»ç¨æ·çè§åº¦å±ç¤ºç³»ç»çåè½,å æ¬ç¨ä¾å¾ã
对象模å:éç¨å¯¹è±¡,å±æ§,æä½,å ³èçæ¦å¿µå±ç¤ºç³»ç»çç»æååºç¡,å æ¬ç±»å«å¾ã对象å¾ã
å¨æ模å:å±ç°ç³»ç»çå é¨è¡ä¸ºãå æ¬åºåå¾,æ´»å¨å¾,ç¶æå¾ã
éè¿FreedgoDesginå¯ä»¥ç»å¶åç±»UMLå¾è¡¨,å æ¬
UMLç¨ä¾å¾
UMLç±»å¾
UMLæ¶åºå¾
UMLæ´»å¨å¾
UMLæ³³éå¾
ç¹å»é¡µé¢ä¸é¢+æ´å¤å¾å½¢,éæ©åå¡/(ä¸å¡å»ºæ¨¡)->UML,å¯ä»¥è®¾è®¡åç±»UMLå¾è¡¨,åè§ä¸å¾:
æ°æ®åºER模å
ER模åæ¯å¨æ°æ®åºè®¾è®¡ä¸å¸¸ç¨çæ°æ®å»ºæ¨¡å·¥å ·,é常æ¯ç¨æ¥æè¿°å®ä½çä¿¡æ¯åå®ä½ä¸å®ä½ä¹åçå ³ç³»ã
å¨FreedgoDesignæä¾äºå¯¹ER模åçæ¯æ:
éè¿å¾æ åºéæ©ER模åç»å¶æ°æ®åºER模å
éè¿èåè°æ´å¾å½¢->æå ¥->SQL...å¯¼å ¥sqlDDLèæ¬å建æ°æ®åºER模å
BPMN模å设计
BPMNæ¯ä¸å¡æµç¨å»ºæ¨¡ä¸æ è®°,æ¯ç¨äºæ建ä¸å¡æµç¨å¾çä¸ç§å»ºæ¨¡è¯è¨æ åã
å¯ä»¥éè¿å¾æ åºéæ©BPMNç»å¶BPMN模å
Archimate设计
Archimateæ¯ä¸ç§æ´åå¤ç§æ¶æçä¸ç§å¯è§åä¸å¡åæ模åè¯è¨,å±äºæ¶ææè¿°è¯è¨(ADL),å®ä»ä¸å¡ãåºç¨åææ¯ä¸ä¸ªå±æ¬¡(Layer),ç©ä»¶ãè¡ä¸ºå主ä½ä¸ä¸ªæ¹é¢(Aspect)å产åãç»ç»ãæµç¨ãèµè®¯ãèµæãåºç¨ãææ¯é¢å(Domain)æ¥è¿è¡æè¿°ã
å¯ä»¥éè¿å¾æ åºéæ©BPMNç»å¶BPMN模å
EPC设计
EPCæ¯ç¨äºè¯´æä¸å¡æµç¨å·¥ä½æµ,æ¯è¿è¡ä¸å¡å·¥ç¨è®¾è®¡çSAPR/3建模æ¦å¿µçéè¦ç»ä»¶ã
å¯ä»¥éè¿å¾æ åºéæ©EPCç»å¶EPC模å
ç±»å¾ç¨ä»ä¹å·¥å ·ç»ï¼ç±»å¾ç¨StarUMLå·¥å ·ç»ã
StarUMLæ¯ä¸ç§å建UMLç±»å¾,çæç±»å¾åå ¶ä»ç±»åçç»ä¸å»ºæ¨¡è¯è¨(UML)å¾è¡¨çå·¥å ·ãStarUMLæ¯ä¸ä¸ªå¼æºé¡¹ç®ä¹ä¸åå±å¿«ãçµæ´»ãå¯æ©å±æ§å¼º(zj)ãæ¯æç§GoF模å¼(Pattern),以å3ç§EJB模å¼ãStarUMLä¹ç»åäºæ¨¡å¼åèªå¨çæ代ç çåè½,æ¹ä¾¿è½å®è®¾è®¡ã
GoF模å¼åºèªäºErichGammaç4人åèçDesignPatterns:ElementsofReusableObject-OrientedSoftwareä¸ä¹¦,å ¶å ååºäºç§è½¯ä»¶æ¨¡å¼,å¯è§£å³è½¯ä»¶è®¾è®¡ä¸çç¹å®é®é¢ãStarUMLä¹æ¯æ3ç§å¸¸ç¨çEJB模å¼,åå«ä¸ºEntityEJBãMessageDrivenEJBãSessionEJBã
ç¸å ³ä¿¡æ¯
1ãå¯ç»å¶9款UMLå¾:ç¨ä¾å¾ãç±»å¾ãåºåå¾ãç¶æå¾ãæ´»å¨å¾ãéä¿¡å¾ãæ件å¾ãé¨ç½²å¾ä»¥åå¤åç»æå¾çã
2ãå®å ¨å è´¹:StarUMLæ¯ä¸å¥å¼æ¾æºç ç软件,ä¸ä» å è´¹èªç±ä¸è½½,è¿ä»£ç é½å è´¹å¼æ¾ã
3ãå¤ç§æ ¼å¼å½±åæ件:å¯å¯¼åºJPGãJPEGãBMPãEMFåWMFçæ ¼å¼çå½±åæ件ã
4ãè¯æ³æ£éª:StarUMLéµå®UMLçè¯æ³è§å,ä¸æ¯æè¿åè¯æ³çå¨ä½ã
5ãæ£ååå·¥ç¨:StarUMLå¯ä»¥ä¾æ®ç±»å¾çå 容çæJavaãC++ãC#代ç ,ä¹è½å¤è¯»åJavaãC++ãC#代ç ååçæç±»å¾ã
web前端教程:在React项目中使用ECharts图标库制图
在前端开发过程中,数据可视化是不可或缺的部分。然而,仅凭 HTML5 Canvas 来实现这一功能可能较为复杂,因此我们通常会借助一些可视化工具,如 ECharts、HighCharts 和 Chart.js 等。本文将聚焦于将 ECharts 应用于 React 项目中的实践案例。
为了在 React 项目中高效地集成 ECharts,我们无需直接引入其核心 JS 文件。React 项目的构建流程基于 webpack,而 webpack 又与 Node.js 紧密相连。因此,我们可以通过 npm 包管理器轻松下载第三方工具并将其集成到项目中,进而通过 import 语句在相关页面中引入所需模块。
让我们通过两个案例来深入探讨 ECharts 在 React 项目中的实际应用。
首先,我们将探讨如何利用极坐标双数值轴绘制出一颗爱心图形。这一示例展示了 ECharts 的强大功能,让我们能够直观地呈现复杂的数据关系。
接下来,我们将介绍如何运用南丁格尔玫瑰图来展示数据,这种图表类型特别适用于展示多组数据之间的关系。通过这个案例,我们能够进一步了解 ECharts 在数据可视化领域的灵活性与多样性。
在实践中,我们不仅能够实现美观且功能丰富的数据展示,还能通过源代码学习 ECharts 的使用技巧,为未来的项目开发打下坚实的基础。
此内容源自知乎:千锋HTML5学院
原链接:如何在React项目中使用ECharts图表库