提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:黄竹雯|2018-11-16 12:08:53.000|阅读 663 次
概述:ChartDirector 6.3(C ++版)教程分享——侧标签布局
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
相关链接:

此示例演示了用于定位扇区标签的“侧标签布局”方法。它还演示了金属背景颜色,以及具有玻璃阴影效果和圆角的扇形标签。
使用“侧标签布局”,扇区标签位于图表的左侧和右侧。相比之下,所有先前的示例都使用“圆形标签布局”,其中标签围绕饼图圆形地定位。
“侧标签布局”的优点是标签会自动上下移动以避免重叠。在上图中,馅饼右下方有许多小扇区。请注意,标签会移动以避免重叠。
此示例演示了一种通过使用调整第一个扇区的起始角度来进一步改进标签布局的技术。
如果数据有很多小值并且已经排序,那么小扇区就会挤在一起。对于这些情况,如果小扇区位于饼图的左侧或右侧,而不是顶部或底部,则标签布局将是最佳的(需要最少的移位)。
如果数据按降序排列(如本例所示),则可以使用135度的起始角度和顺时针扇区布局将小扇区放置在大约45-135度(饼图的右侧)。如果数据按升序排列,则可以使用具有顺时针扇区布局的45度的起始角度来实现类似的效果。
源代码清单
#include“chartdir.h”
int main(int argc,char * argv [])
{
//饼图的数据
double data [] = {35,30,25,7,6,5,4,3,2,1};
//饼图的标签
const char * labels [] = {“Labor”,“Production”,“Facilities”,“Taxes”,“Misc”,“Legal”,
“保险”,“许可证”,“运输”,“利息”};
//创建一个大小为560 x 270像素的PieChart对象,带有金色背景和1像素3D
// 边界
PieChart * c =新的PieChart(560,270,Chart :: goldColor(),-1,1);
//使用15pt Times Bold Italic字体和金属粉红色背景颜色添加标题框
c-> addTitle(“Project Cost Breakdown”,“timesbi.ttf”,15) - > setBackground(Chart :: metalColor(
0xff9999));
//将饼图的中心设置为(280,135),将半径设置为110像素
c-> setPieSize(280,135,110);
//使用20像素3D深度在3D中绘制饼图
C-> set3D(20);
//使用侧标签布局方法
C-> setLabelLayout(图::页面布局);
//将标签框背景颜色设置为与扇区颜色相同,具有玻璃效果,并使用
// 5像素圆角
TextBox * t = c-> setLabelStyle();
t-> setBackground(Chart :: SameAsMainColor,Chart :: Transparent,Chart :: glassEffect());
T-> setRoundedCorners(5);
//将扇区的边框颜色设置为与填充颜色相同的颜色。设置线条颜色
//连接线为黑色(0x0)
c-> setLineColor(Chart :: SameAsMainColor,0x000000);
//当有许多小扇区时,将起始角度设置为135度可以改善布局
//数据数组的结尾(即数据按降序排序)。是因为这个
//使小扇区位于水平轴附近,文本标签的位置最小
//倾向于重叠 对于按升序排序的数据,可以是45度的起始角度
//用来代替。
C-> setStartAngle(135);
//设置饼图数据和饼图标签
c-> setData(DoubleArray(data,(int)(sizeof(data)/ sizeof(data [0]))),StringArray(labels,(int)(
sizeof(labels)/ sizeof(labels [0]))));
//输出图表
C-> makeChart( “sidelabelpie.png”);
//释放资源
删除c;
返回0;
}
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn




本文将为大家介绍如何在MyEclipse中使用XDoclet开发EJB 2 Session Bean,欢迎下载最新版体验!
如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
本文主要介绍如何在MVVM应用程序中使用虚拟源,欢迎下载最新版组件体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站