CN116401310A - 一种柱状图堆叠显示方法及装置 - Google Patents
一种柱状图堆叠显示方法及装置 Download PDFInfo
- Publication number
- CN116401310A CN116401310A CN202310671173.5A CN202310671173A CN116401310A CN 116401310 A CN116401310 A CN 116401310A CN 202310671173 A CN202310671173 A CN 202310671173A CN 116401310 A CN116401310 A CN 116401310A
- Authority
- CN
- China
- Prior art keywords
- coordinate
- histograms
- histogram
- data
- coordinate data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000009877 rendering Methods 0.000 claims abstract description 22
- 230000003068 static effect Effects 0.000 claims abstract description 13
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 238000001514 detection method Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 4
- 239000010432 diamond Substances 0.000 description 4
- 229910003460 diamond Inorganic materials 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种柱状图堆叠显示方法及装置,该方法包括:获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据;根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据;根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。采用本发明实施例,通过将图表的统计数据转换为坐标数据,利用坐标数据进行碰撞检测,从而实现对多个柱状图堆叠的衔接部分进行优化。
Description
技术领域
本发明涉及数据显示技术领域,尤其涉及一种柱状图堆叠显示方法及装置。
背景技术
目前流行的可视化解决方案有Echarts、HighCharts、D3.js,这些解决方案中均未提供可直接使用的N层堆叠的3D柱状图组件。在详细调研流行的可视化解决方案后发现使用较为复杂且性能较差的“拼接法”可以生成简单的3D柱状图;即通过内置的矩形、菱形、三角形来拼接组合生成3D柱状图,具体做法为使用顶部菱形、中部矩形(左)、中部三角形(左上)、中部矩形(右)、中部三角形(右上)、底部三角形(左下)、底部三角形(右下)共7个子元素拼接组合而成3D柱状图。使用拼接法,每个3D柱状图具有7个子元素,如果N层3D柱状图堆叠,则有7×N个子元素,这种方法不仅在多个柱状图堆叠的衔接处出现碰撞,从而现有技术在多个3D柱状图堆叠的情况下,柱状图之间的衔接处优化较差。
发明内容
本发明提供了一种柱状图堆叠显示方法及装置,以解决现有技术在实现多个3D柱状图堆叠时,柱状图之间的衔接处优化较差的技术问题。
为了解决上述技术问题,本发明实施例提供了一种柱状图堆叠显示方法,包括:
获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据;
根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据;
根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
本发明通过将待显示图表中的统计数据先转化为第一坐标数据,再利用第一坐标数据对各个柱状图堆叠时的衔接部分进行碰撞检测或对是否重叠进行检测,最后使用经坐标调节得到的第二坐标数据进行柱状图堆叠的绘制,从而优化了多个柱状图堆叠的衔接部分。
进一步地,所述获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据,具体为:
从图表库中获取所述待显示图表中某一列的统计数据;
根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据。
进一步地,所述根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据,具体为:
根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为所述若干个柱状图的网页坐标;其中,所述网页坐标包括:第一x轴坐标和第一y轴坐标;
根据所述若干个柱状图的第一y轴坐标,计算每个柱状图的高度;
将高度小于第一阈值的柱状图顶部的第一y轴坐标增加所述第一阈值,得到所述若干个柱状图的第一坐标数据。
本发明通过将待显示图表的统计数据转换为坐标数据,从而利用坐标数据和第一阈值进行最小高度的补全,避免因某一柱状图因小于最小高度而导致在堆叠的柱状图之间无法显示,实现对多个柱状图堆叠的衔接处进行优化。
进一步地,在所述获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据之后,包括:
对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,停止对所述某一柱状图进行渲染。
进一步地,对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,停止对所述某一柱状图进行渲染,具体为:
根据所述若干个柱状图的第二坐标数据,计算每个柱状图的顶部与底部的坐标差;
当某一柱状图的顶部与底部的坐标差为0时,停止对所述某一柱状图进行渲染。
本发明利用柱状图的第二坐标数据对异常值进行排除,避免了高度为0的坐标在最终绘制的某一列的若干个柱状图中出现,优化了多个柱状图堆叠的衔接处。
进一步地,所述根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据,具体为:
从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标;
当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
本发明采用利用第二坐标数据对相邻两个柱状图的顶部和底部进行比较,将碰撞的两个柱状图中的后一个柱状图的底部坐标进行调节,从而避免了两个柱状图之间的重叠,优化了多个柱状图堆叠的衔接部分。
进一步地,所述调节所述后一个柱状图的第一底部坐标,以使所述后一个柱状图的第二底部坐标大于所述前一个柱状图的第一顶部坐标,具体为:
将所述前一个柱状图的第一顶部坐标赋值给所述后一个柱状图的第一底部坐标,再将所述后一个柱状图的第一底部坐标增加间隙值。
进一步地,所述根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图,具体为:
其中,所述预设的静态变量包括:柱状图高度和柱状图宽度;所述第二坐标数据包括:第二顶部坐标和第二底部坐标;
对所述柱状图高度和所述柱状图宽度进行赋值;
根据每个柱状图的第二顶部坐标、每个柱状图的第二底部坐标和旋转角度,计算得到每个柱状图中各个点的坐标;
根据所述每个柱状图的各个点的坐标、所述柱状图高度和所述柱状图宽度,分别对每个柱状图的顶部和左右两侧进行绘制,得到绘制后的柱状图像,并对所述柱状图像进行渲染。
另一方面,本发明实施例还提供了一种柱状图堆叠显示装置,包括:数据获取模块、数据处理模块和图像显示模块;
其中,所述数据获取模块用于获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据;
所述数据处理模块用于根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据;
所述图像显示模块用于根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
本发明通过将待显示图表中的统计数据先转化为第一坐标数据,再利用第一坐标数据对各个柱状图堆叠时的衔接部分进行碰撞检测或对是否重叠进行检测,最后使用经坐标调节得到的第二坐标数据进行柱状图堆叠的绘制,从而优化了多个柱状图堆叠的衔接部分。
进一步地,所述数据处理模块,包括:数据获取单元和坐标调节单元;
其中,所述数据获取单元用于从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标;
所述坐标调节单元用于当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
本发明采用利用第二坐标数据对相邻两个柱状图的顶部和底部进行比较,将碰撞的两个柱状图中的后一个柱状图的底部坐标进行调节,从而避免了两个柱状图之间的重叠,优化了多个柱状图堆叠的衔接部分。
附图说明
图1为本发明提供的柱状图堆叠显示方法的一种实施例的流程示意图;
图2为本发明提供的柱状图堆叠显示方法的另一种实施例的流程示意图;
图3为本发明提供的柱状图堆叠显示装置的一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,为本发明提供的柱状图堆叠显示方法的一种实施例的流程示意图,包括步骤101-103,具体如下:
步骤101:获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据。
在本实施例中,步骤101具体包括步骤1011-1012,具体如下:
步骤1011:从图表库中获取所述待显示图表中某一列的统计数据。
在本实施例中,所述图标库为Echarts图标库;其为基于JavaScript的开源可视化图标库。
步骤1012:根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据。
在本实施例中,所述步骤1012具体为:根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为所述若干个柱状图的网页坐标;根据所述若干个柱状图的第一y轴坐标,计算每个柱状图的高度;将高度小于第一阈值的柱状图顶部的第一y轴坐标增加所述第一阈值,得到所述若干个柱状图的第一坐标数据;其中,所述网页坐标包括:第一x轴坐标和第一y轴坐标。
在本实施例中,获取到当前3D柱状图数据值后,还需要利用dataset计算当前3D柱状图之前的所有3D柱状图数据值之和。因为堆叠时有层级的关系,上一层级的3D柱状图数据值必须是与下一层级的3D柱状图数据值之和才能产生堆叠的效果,否则会出现柱状图部分或全部重叠的情况。此时得到了首坐标对应的数据值,尾坐标数据值即上述中当前3D柱状图之前的所有3D柱状图数据值之和。这里需要注意的是如果传入的direction为水平方向,获取数据值方法为:api.value(1),该数据值代表y轴;如果为竖直方向,获取数据值方法为:api.value(0),该数据值代表x轴。水平方向的x轴数值与竖直方向的y轴数值可以通过Echarts中custom的params.dataIndex获得。得到x、y轴分别对应的数据值后,可以调用api.coord得到顶部坐标([x, y])与底部坐标([x1, y1]);其中,3D柱状图由所述若干个柱状图堆叠得到。
在本实施例中,所述第一阈值的范围为10-20px,优选为12px。
在本实施例中,自定义接口包括:tooltip接口、xAxis接口、yAxis接口和legend接口等。
在本实施例中,所述得到所述若干个柱状图的第一坐标数据之后,包括:将所述若干个柱状图的第一坐标数据保存至缓存中。
本发明通过将待显示图表的统计数据转换为坐标数据,从而利用坐标数据和第一阈值进行最小高度的补全,避免因某一柱状图因小于最小高度而导致在堆叠的柱状图之间无法显示,实现对多个柱状图堆叠的衔接处进行优化。
在本实施例中,在步骤101之后包括:对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,返还null并停止对所述某一柱状图进行渲染,具体为:根据所述若干个柱状图的第一坐标数据,计算每个柱状图的顶部与底部的坐标差;当某一柱状图的顶部与底部的坐标差为0时,停止对所述某一柱状图进行渲染。
本发明利用柱状图的第二坐标数据对异常值进行排除,避免了高度为0的坐标在最终绘制的某一列的若干个柱状图中出现,优化了多个柱状图堆叠的衔接处。
步骤102:根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据。
在本实施例中,柱状图碰撞即指在多个柱状图堆叠的过程中,当前柱状图与前一个或后一个柱状图发生重叠的情况。
步骤103:根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
在本实施例中,步骤103具体包括步骤1031-103,具体如下:
其中,所述预设的静态变量包括:柱状图宽度和柱状图高度;
步骤1031:对所述柱状图高度和所述柱状图宽度进行赋值。
在本实施例中,步骤1031具体为:将所述柱状图高度的赋值为5-15px,优选为10px;将所述柱状图宽度赋值为6-10px,优选为8px。
在本实施例中,所述第二坐标数据包括:第二顶部坐标和第二底部坐标。
步骤1032:根据每个柱状图的第二顶部坐标、每个柱状图的第二底部坐标和旋转角度,计算得到每个柱状图中各个点的坐标。
步骤1033:根据所述每个柱状图的各个点的坐标、所述柱状图高度和所述柱状图宽度,分别对每个柱状图的顶部和左右两侧进行绘制,得到绘制后的柱状图像,并对所述柱状图像进行渲染。
在本实施例中,绘制后的柱状图像返回至图表库,如Echarts图表库,中完成渲染。当3D柱状图坐标都完成了处理确保无误后,开始绘制图形。首先创建可全局统一修改的静态变量BAR_WIDTH(柱状图宽度)、BAR_HEIGHT(柱状图高度)分别赋值10px、8px。其次使用首坐标与旋转角度计算得出顶部棱形的各个点坐标3DBarTop,然后绘制左、右俩个侧面3DBarLeft、3DBarRight,最终得到3DBar,将3DBar返回给Echarts即可完成渲染(见其他使用逻辑示例)。其中,3DBar为绘制后的柱状图像。
请参照图2,为本发明提供的柱状图堆叠显示方法的另一种实施例的流程示意图,包括步骤201-202,具体如下:
在本实施例中,步骤102具体包括步骤201至步骤202。
步骤201:从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标。
步骤202:当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
在本实施例中,所述调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的底部坐标大于所述前一个柱状图的顶部坐标,具体为:将所述前一个柱状图的顶部坐标赋值给所述后一个柱状图的底部坐标,再将所述后一个柱状图的底部坐标增加间隙值。
在本实施例中,间隙值的范围为1-20px,优选为10px。
在本实施例中,所述顶部坐标为顶部y轴坐标,所述底部坐标为底部y轴坐标。
本发明采用利用第二坐标数据对相邻两个柱状图的顶部和底部进行比较,将碰撞的两个柱状图中的后一个柱状图的底部坐标进行调节,从而避免了两个柱状图之间的重叠,优化了多个柱状图堆叠的衔接部分。
请参照图3,为本发明提供的柱状图堆叠显示装置的一种实施例的结构示意图,该柱状图堆叠显示装置,包括:数据获取模块301、数据处理模块302和图像显示模块303。
在本实施例中,数据获取模块301用于获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据。
在本实施例中,数据获取模块301包括:第二数据获取单元和数据转换单元;其中,第二数据获取单元用于从图表库中获取所述待显示图表中某一列的统计数据;数据转换单元用于根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据。
在本实施例中,该柱状图堆叠显示装置,还包括:异常值排除模块,用于对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,停止对所述某一柱状图进行渲染。
数据处理模块302用于根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据。
在本实施例中,数据处理模块302,包括:数据获取单元和坐标调节单元;其中,所述数据获取单元用于从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标;所述坐标调节单元用于当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
图像显示模块303用于根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
本发明通过将待显示图表中的统计数据先转化为第一坐标数据,再利用第一坐标数据对各个柱状图堆叠时的衔接部分进行碰撞检测或对是否重叠进行检测,最后使用经坐标调节得到的第二坐标数据进行柱状图堆叠的绘制,从而优化了多个柱状图堆叠的衔接部分。
采用本发明实施例可得到如下有益效果:1.可维护性强。将不同的坐标处理逻辑封装成不同的函数,例如:最小高度补齐、缓存坐标处理、是否渲染数据0、碰撞检测、间隙补全等。若干个柱状图的首尾坐标按顺序进行处理,最终输出位置、顺序正确的新坐标。2.可扩展性、可定制性强。传入不同旋转角度后即可生成对应角度下的菱形,对于不想使用菱形的情况可以根据坐标随意绘制图形。3.通过缓存、集合绘制等手段减少内存占用,提升页面渲染速度避免白屏、卡顿等情况的发生。4.通过碰撞检测,合理规划柱状图坐标从而达到堆叠的目的。5.动态控制某个柱状图的显示与隐藏。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种柱状图堆叠显示方法,其特征在于,包括:
获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据;
根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据;
根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
2.如权利要求1所述的柱状图堆叠显示方法,其特征在于,所述获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据,具体为:
从图表库中获取所述待显示图表中某一列的统计数据;
根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据。
3.如权利要求2所述的柱状图堆叠显示方法,其特征在于,所述根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为网页坐标,在对所述网页坐标进行最小值高度补全后,得到所述若干个柱状图的第一坐标数据,具体为:
根据所述待显示图表的方向和自定义接口,将所述某一列的统计数据转换为所述若干个柱状图的网页坐标;其中,所述网页坐标包括:第一x轴坐标和第一y轴坐标;
根据所述若干个柱状图的第一y轴坐标,计算每个柱状图的高度;
将高度小于第一阈值的柱状图顶部的第一y轴坐标增加所述第一阈值,得到所述若干个柱状图的第一坐标数据。
4.如权利要求1所述的柱状图堆叠显示方法,其特征在于,在所述获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据之后,包括:
对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,停止对所述某一柱状图进行渲染。
5.如权利要求4所述的柱状图堆叠显示方法,其特征在于,对所述若干个柱状图的第一坐标数据进行异常值检测,当发现某一柱状图的第一坐标数据为异常值时,停止对所述某一柱状图进行渲染,具体为:
根据所述若干个柱状图的第二坐标数据,计算每个柱状图的顶部与底部的坐标差;
当某一柱状图的顶部与底部的坐标差为0时,停止对所述某一柱状图进行渲染。
6.如权利要求1所述的柱状图堆叠显示方法,其特征在于,所述根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据,具体为:
从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标;
当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
7.如权利要求6所述的柱状图堆叠显示方法,其特征在于,所述调节所述后一个柱状图的第一底部坐标,以使所述后一个柱状图的第二底部坐标大于所述前一个柱状图的第一顶部坐标,具体为:
将所述前一个柱状图的第一顶部坐标赋值给所述后一个柱状图的第一底部坐标,再将所述后一个柱状图的第一底部坐标增加间隙值。
8.如权利要求1-6任意一项所述的柱状图堆叠显示方法,其特征在于,所述根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图,具体为:
其中,所述预设的静态变量包括:柱状图高度和柱状图宽度;所述第二坐标数据包括:第二顶部坐标和第二底部坐标;
对所述柱状图高度和所述柱状图宽度进行赋值;
根据每个柱状图的第二顶部坐标、每个柱状图的第二底部坐标和旋转角度,计算得到每个柱状图中各个点的坐标;
根据所述每个柱状图的各个点的坐标、所述柱状图高度和所述柱状图宽度,分别对每个柱状图的顶部和左右两侧进行绘制,得到绘制后的柱状图像,并对所述柱状图像进行渲染。
9.一种柱状图堆叠显示装置,其特征在于,包括:数据获取模块、数据处理模块和图像显示模块;
其中,所述数据获取模块用于获取待显示图表中某一列的统计数据,并将所述某一列的统计数据转换为若干个柱状图的第一坐标数据;
所述数据处理模块用于根据所述若干个柱状图的第一坐标数据,对发生重叠的柱状图的坐标进行调节,得到所述若干个柱状图的第二坐标数据;
所述图像显示模块用于根据预设的静态变量,对所述若干个柱状图的第二坐标数据进行绘制,渲染绘制后的所述若干个柱状图。
10.如权利要求9所述的柱状图堆叠显示装置,其特征在于,所述数据处理模块,包括:数据获取单元和坐标调节单元;
其中,所述数据获取单元用于从所述若干个柱状图的第一坐标数据中,获取任意两个相邻柱状图的第一坐标数据;其中,所述第一坐标数据包括第一顶部坐标和第一底部坐标;
所述坐标调节单元用于当任意两个相邻柱状图中的前一个柱状图的第一顶部坐标大于后一个柱状图的第一底部坐标时,调节所述后一个柱状图的底部坐标,以使所述后一个柱状图的第一底部坐标大于所述前一个柱状图的第一顶部坐标,得到所述若干个柱状图的第二坐标数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310671173.5A CN116401310B (zh) | 2023-06-08 | 2023-06-08 | 一种柱状图堆叠显示方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310671173.5A CN116401310B (zh) | 2023-06-08 | 2023-06-08 | 一种柱状图堆叠显示方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116401310A true CN116401310A (zh) | 2023-07-07 |
CN116401310B CN116401310B (zh) | 2023-08-22 |
Family
ID=87018388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310671173.5A Active CN116401310B (zh) | 2023-06-08 | 2023-06-08 | 一种柱状图堆叠显示方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116401310B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010111585A1 (en) * | 2009-03-27 | 2010-09-30 | Mellmo Inc. | Displaying stacked bar charts in a limited display area |
CN105279796A (zh) * | 2015-10-10 | 2016-01-27 | 苏州工业园区凌志软件股份有限公司 | 一种3d柱状图的绘制方法及装置 |
US20160117851A1 (en) * | 2014-10-22 | 2016-04-28 | Alibaba Group Holding Limited | Method and apparatus for displaying statictical graphs on a terminal display |
WO2016065173A1 (en) * | 2014-10-22 | 2016-04-28 | Alibaba Group Holding Limited | Method and apparatus for displaying statistical graphs on a terminal display |
CN109491722A (zh) * | 2018-11-05 | 2019-03-19 | 四川长虹电器股份有限公司 | 基于微信小程序的柱状图图表插件***及其实现方法 |
CN113655942A (zh) * | 2021-08-31 | 2021-11-16 | 北京沃东天骏信息技术有限公司 | 一种图表数据的展示方法和装置 |
CN114996542A (zh) * | 2022-06-17 | 2022-09-02 | 平安科技(深圳)有限公司 | 一种基于数据分布的横向柱状图显示方法及相关设备 |
CN115602288A (zh) * | 2022-11-29 | 2023-01-13 | 北京嘉和美康信息技术有限公司(Cn) | 数据处理方法、装置及电子设备和存储介质 |
CN115794980A (zh) * | 2022-12-01 | 2023-03-14 | 青岛海信网络科技股份有限公司 | 一种数据展示方法、设备、装置及介质 |
-
2023
- 2023-06-08 CN CN202310671173.5A patent/CN116401310B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010111585A1 (en) * | 2009-03-27 | 2010-09-30 | Mellmo Inc. | Displaying stacked bar charts in a limited display area |
US20160117851A1 (en) * | 2014-10-22 | 2016-04-28 | Alibaba Group Holding Limited | Method and apparatus for displaying statictical graphs on a terminal display |
WO2016065173A1 (en) * | 2014-10-22 | 2016-04-28 | Alibaba Group Holding Limited | Method and apparatus for displaying statistical graphs on a terminal display |
CN105279796A (zh) * | 2015-10-10 | 2016-01-27 | 苏州工业园区凌志软件股份有限公司 | 一种3d柱状图的绘制方法及装置 |
CN109491722A (zh) * | 2018-11-05 | 2019-03-19 | 四川长虹电器股份有限公司 | 基于微信小程序的柱状图图表插件***及其实现方法 |
CN113655942A (zh) * | 2021-08-31 | 2021-11-16 | 北京沃东天骏信息技术有限公司 | 一种图表数据的展示方法和装置 |
CN114996542A (zh) * | 2022-06-17 | 2022-09-02 | 平安科技(深圳)有限公司 | 一种基于数据分布的横向柱状图显示方法及相关设备 |
CN115602288A (zh) * | 2022-11-29 | 2023-01-13 | 北京嘉和美康信息技术有限公司(Cn) | 数据处理方法、装置及电子设备和存储介质 |
CN115794980A (zh) * | 2022-12-01 | 2023-03-14 | 青岛海信网络科技股份有限公司 | 一种数据展示方法、设备、装置及介质 |
Non-Patent Citations (2)
Title |
---|
张永辉;: "基于MapGIS的钻孔柱状图自动生成***研发", 河南科技, no. 19 * |
黄煌;王金茵;杨柳;吴嘉逸;王结臣;: "三维网格柱状图制图表达及应用研究", 现代测绘, no. 03 * |
Also Published As
Publication number | Publication date |
---|---|
CN116401310B (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11842438B2 (en) | Method and terminal device for determining occluded area of virtual object | |
CN109783181A (zh) | 屏幕适配显示方法、电子设备及计算机存储介质 | |
EP0112942B1 (en) | Graphics display system and method | |
CN105094617A (zh) | 一种截屏方法及装置 | |
CN104025180B (zh) | 具有保守边界的五维光栅化 | |
US20230338842A1 (en) | Rendering processing method and electronic device | |
EP3998576A2 (en) | Image stitching method and apparatus, device, and medium | |
JP2021174531A (ja) | 目標追跡方法及び装置、電子機器、記憶媒体並びにコンピュータプログラム | |
CN107817935A (zh) | 应用界面的显示方法、装置、终端和计算机可读存储介质 | |
CN111782114B (zh) | 文稿编辑应用中的元素展示方法、装置、设备及介质 | |
CN113221895A (zh) | 小目标检测方法、装置、设备及介质 | |
CN116401310B (zh) | 一种柱状图堆叠显示方法及装置 | |
CN102932607A (zh) | 一种字幕图文信息生成方法及装置 | |
US20090058883A1 (en) | Method for rotating images | |
US20140016824A1 (en) | Device and method for detecting angle of rotation from normal position of image | |
JP2009086860A (ja) | 画像処理装置、画像処理システム及びプログラム | |
CN111814803A (zh) | 一种图形分割方法、装置、设备及计算机可读存储介质 | |
CN114995706A (zh) | 一种元素显示方法、装置、设备及存储介质 | |
CN113921412A (zh) | 一种晶圆中晶片周期的计算方法、装置和设备 | |
CN111599080B (zh) | 拼接纸币的检测方法、装置、金融机具设备及存储介质 | |
CN1067127A (zh) | 一种自动镶嵌图形体的计算机图形***与方法 | |
CN116912395B (zh) | 基于OpenGL的图形混合渲染方法、装置及存储介质 | |
EP0357076B1 (en) | Inclined rectangular pattern generating system | |
CN117241090B (zh) | 一种视频流中目标区域的信息生成方法和装置 | |
CN118034626A (zh) | 一种图像展示控制方法、装置、电子设备及可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |