svg展示设计方案
1、设计目的
1)能支持GEF编辑器和浏览器展示
2)数据请求方式为基于web网络服务器的rest接口
3)支持任意自由度的svg编辑:浏览器编辑,GEF编辑,手动编辑svg文件
4)报表分析
5)支持树形
6)支持表格
7)未来可以分布式部署
8)每个svg图元都有自己绑定的业务属性数据。
2、 数据格式
将展示数据与业务数据分开存储,先生成svg。因为需要分布式部署,所以采用数据存储而不是存储在磁盘。
故普展示数据存储为svg:
1、存储简单,无论在GEF或者浏览器都可展示无冲突。
2、展示数据很少变化,整体存储更好,比存储元数据后再组装生成svg更简洁。
3、可以根据浏览器插件直接对svg进行变更。
缺陷:做不到差量更新
业务数据存储为json:
1、json存储上更加简洁,高效,直观。
2、表设计上可以直接存储具有层级关系的json和类似传统的表主外键设计相结合。
4、表字段可以任意定义以及变更,更加符合属性不定的情况。
3、数据的可视化方案
业务数据报表分析存储为json:
1、可以采用d3.js等插件将json格式的业务数据转为可视化的报表数据。
4、 数据库用postgresql。原因:
1、支持jsonb格式存储。
2、对nosql的支持。在json对象差量更新上会有优势。
数据库设计
图元属性业务数据格式一般如下,$为变量:
{
“at1”:”$at1”,
“at2”:”$at2”,
“2”:{
“$key1”:”$value1”,
“$key2”:”$value2”,
……
“$keyn”:”$valuen”
},
“3”:{
[“$key1”:”$value1”],
[“$key2”:”$value2”],
……
[“$keyn”:”$valuen”]
}
}
将设计成如下表:
------------------------------------------------------------
id:varchar(10) | type:varchar(1) | json:json
------------------------------------------------------------
1 1 {
“at1”:”$at1”,
“at2”:”$at2”
}
------------------------------------------------------------
1 2 {
“$key1”:”$value1”,
“$key2”:”$value2”,
……
“$keyn”:”$valuen”
}
------------------------------------------------------------
1 3 {
[“$key1”:”$value1”],
[“$key2”:”$value2”],
……
[“$keyn”:”$valuen”]
}
------------------------------------------------------------
5、接口划分
1、图形数据接口:获取图形展示数据
2、业务数据接口:根据图形点击事件获取相关业务数据
分享到:
相关推荐
### 基于GEF框架的SVG制作工具设计与实现 #### 摘要与引言 本文聚焦于探讨一种新型SVG(可缩放矢量图形)制作工具的设计与实现,该工具基于Eclipse平台的GEF(Graphic Editor Framework)框架。SVG作为一种基于XML...
综上所述,这些12个SVG Loading图标演示展示了SVG在网页设计和开发中的强大功能,不仅提供了美观的视觉体验,还通过动态加载效果提升了用户交互性。了解并掌握SVG的使用,对于提升网页质量和用户体验至关重要。
方案设计部分会详细解释荣信公司如何根据客户需求定制SVG系统,包括系统规模、控制策略、安装布局和预期效果。这通常涉及与现有电力系统的集成策略,以确保最优的性能和可靠性。 5. SVG控制策略介绍: 这部分可能...
然而,对于那些仍然需要在旧版IE上展示SVG内容的用户,Adobe SVG Viewer插件仍然是一个不可或缺的解决方案。 除了Adobe提供的SVG Viewer之外,还有其他第三方解决方案,如CuteSoft的SVG Web,它通过JavaScript库来...
SVG的“viewBox”属性允许设计者在不同的视窗尺寸下展示图像的特定部分,而“transform”属性可以对图形进行平移、旋转、缩放、倾斜和矩阵变换。这些变换可以用来进一步操纵和修饰SVG图像,以便更好地适应不同的显示...
VML的优势在于它的兼容性,尤其是在较旧的Internet Explorer浏览器中,当SVG( Scalable Vector Graphics)尚未被广泛支持时,VML成为了替代方案。在工作流程展示中,VML可以创建出清晰、精确的线条和形状,代表不同...
2. **SVG应用**:这部分可能展示了SVG在实际场景中的应用,如网页设计中作为背景图、按钮或者图标,数据可视化中的图表绘制,或者在响应式设计中如何利用SVG的可缩放性。SVG也可以与JavaScript和其他Web技术结合,...
"SVG转PNG批量"工具就是这样一个解决方案,它可以高效地将SVG文件批量转换为PNG。 SVGToImage.exe 是这个工具的主执行程序,它允许用户一次性处理多个SVG文件,避免了逐个手动转换的繁琐。DLL文件(如Svg.dll)通常...
`svg-captcha`是一个专为前端设计的开源库,它允许开发者在Node.js或基于Express.js的环境中生成SVG格式的验证码。SVG,即可缩放矢量图形(Scalable Vector Graphics),是一种基于XML的图像格式,其优点在于图像...
SVG,全称Scalable Vector Graphics,是一种基于XML(可扩展标记语言)的矢量图形标准,用于在网页上创建和展示高质量、清晰且可缩放的图像。它被广泛应用于网页设计、移动应用、地图绘制、图表制作等领域,尤其在...
这样,SVG不仅增强了用户界面的视觉吸引力,还能与后台数据紧密结合,实现数据驱动的图形展示。 对于“SVGRAS”这个文件名,可能是SVG渲染或动画服务的缩写,这可能是一个C#.NET项目的一部分,用于处理SVG图形的...
HTML5 SVG可互动的3D标签云jQuery插件是一种创新的技术解决方案,用于在网页上创建动态、引人入胜的视觉效果。这个插件,名为svg3dtagcloud.js,利用了HTML5的SVG(Scalable Vector Graphics)技术,为用户提供了一...
该文档详细介绍了 Twaver Web SVG 的架构、开发流程以及常见问题解决方案等内容,旨在帮助开发者更好地理解和掌握 Twaver Web SVG 的使用方法。 #### 二、简介 ##### 2.1 TWAVER WEBSVG 结构 Twaver Web SVG 采用...
- SVG图像在放大时不会失真,对于高分辨率设备和响应式设计特别有用。 2. **HTML2SVG的工作原理**: - 工具通常会解析HTML文档,将HTML元素映射到相应的SVG元素。 - CSS样式可以被转换为SVG属性,使得样式在SVG...
《SVG技术在绘制北京地铁线路图中的应用》 SVG,全称Scalable Vector Graphics,是一种基于XML的矢量图像格式。它与常见的位图格式(如JPEG...这不仅有助于提升个人技能,也为城市交通信息的展示提供了新的解决方案。
总的来说,jQuery SVG高端圆形菜单导航是结合了jQuery的动态效果和SVG的矢量图形优势的创新设计,它为网站提供了一种美观且功能强大的导航解决方案。这种技术不仅增强了用户界面的视觉吸引力,还提高了用户与网页的...
HTML5与SVG动画404页面是现代网页设计中一种创新且吸引用户的解决方案。404页面通常是用户访问不存在网址时遇到的错误页面,而一个活泼有趣的404页面不仅能够减轻用户的挫败感,还能展示网站的独特风格和品牌个性。...
SVG,全称Scalable Vector Graphics(可缩放矢量图形),是一种基于XML的图形描述语言,广泛应用于网页设计和数据可视化领域。它以其清晰的画质、无限的缩放能力和易于编程的特点,在互联网上被大量采用。 SVG地图...
以上代码片段展示了如何创建一个基本的SVG环形进度条并在IE8中使用VML作为备选方案。在实际项目中,你可能需要根据具体需求调整样式和动画参数。 总的来说,实现一个兼容IE8的SVG环形进度条需要结合SVG、VML、CSS和...