图表篇——Xml To Chart (多序列柱状图3D,折线图3D)
2011-02-12 10:47
330 查看
前言
一个实现Xml To Chart的图表引擎,通过Xml配置就能够呈现相应的图表。而且能够方便集成到所需的软件系统。效果图
XML定义说明
与柱状图3D、折线图3D的XML定义相似,但多维数据要对原始数据进行分组和排序,以下是柱状图3D(多序列)的XML定义。<!-- 图表根节点。type属性:图表类型 -->
<ChartSettings type="Column3DMS">
<!-- 名称,不影响报表显示 -->
<Name>柱状图3D(多序列)</Name>
<!-- 宽度 -->
<Width>400</Width>
<!-- 高度 -->
<Height>300</Height>
<!-- 左边距 -->
<PaddingLeft>8</PaddingLeft>
<!-- 右边距 -->
<PaddingRight>8</PaddingRight>
<!-- 上边距 -->
<PaddingTop>8</PaddingTop>
<!-- 下边距 -->
<PaddingBottom>8</PaddingBottom>
<!-- 内部子元件间距 -->
<Gap>2</Gap>
<!-- 前背景色 -->
<BeginBackgroundColor>#ffffff</BeginBackgroundColor>
<!-- 后背景色 -->
<EndBackgroundColor>#f1f1f1</EndBackgroundColor>
<!-- 边框颜色 -->
<BorderColor>#696969</BorderColor>
<!-- 显示标题 -->
<TitleVisible>true</TitleVisible>
<!-- 标题内容 -->
<Title>柱状图(多序列)3D主标题</Title>
<!-- 标题文本颜色 -->
<TitleTextColor>#000000</TitleTextColor>
<!-- 标题字体大小 -->
<TitleFontSize>16</TitleFontSize>
<!-- 标题字体加粗 -->
<TitleFontBold>true</TitleFontBold>
<!-- 显示副标题 -->
<SubtitleVisible>true</SubtitleVisible>
<!-- 副标题内容 -->
<Subtitle>副标题</Subtitle>
<!-- 副标题文本颜色 -->
<SubtitleTextColor>#000000</SubtitleTextColor>
<!-- 副标题字体大小 -->
<SubtitleFontSize>12</SubtitleFontSize>
<!-- 副标题字体加粗 -->
<SubtitleFontBold>false</SubtitleFontBold>
<!-- 设置 -->
<Settings>
<!-- 数据分组字段 -->
<Setting name="GroupByField">Name</Setting>
<!-- 标签字段 -->
<Setting name="LabelField">Subject</Setting>
<!-- 数据值字段 -->
<Setting name="ValueField">Value</Setting>
<!-- 排序表达式 -->
<Setting name="SortExpression"><![CDATA[=Current()]]></Setting>
<!-- 排序方向 -->
<Setting name="SortDirection">ASC</Setting>
<!-- 标签栏 -->
<!-- 显示标签栏 -->
<Setting name="LabelVisible">true</Setting>
<!-- 标签文本颜色 -->
<Setting name="LabelTextColor">#000000</Setting>
<!-- 标签题字体大小 -->
<Setting name="LabelFontSize">10</Setting>
<!-- 标签题字体加粗 -->
<Setting name="LabelFontBold">false</Setting>
<!-- 标签宽度 -->
<Setting name="LabelWidth">120</Setting>
<!-- 标签间距 -->
<Setting name="LabelGap">2</Setting>
<!-- 标签布局列数 -->
<Setting name="LabelColumn">3</Setting>
<!-- 标签内容表达式 -->
<Setting name="LabelExpression"><![CDATA[=Current()]]></Setting>
<!-- 画布 -->
<!-- 画布宽度 -->
<Setting name="CanvasWidth">400</Setting>
<!-- 画布高度 -->
<Setting name="CanvasHeight">260</Setting>
<!-- 画布背景颜色 -->
<Setting name="CanvasBackgroundColor">#DDE3D5</Setting>
<!-- 画布背景透明度 -->
<Setting name="CanvasBackgroundAlpha">1</Setting>
<!-- 画布底栏颜色 -->
<Setting name="CanvasBarColor">#ACBB99</Setting>
<!-- 画布底栏透明度 -->
<Setting name="CanvasBarAlpha">1</Setting>
<!-- 画布线条宽度 -->
<Setting name="CanvasLineThickness">1</Setting>
<!-- 画布线条颜色 -->
<Setting name="CanvasLineColor">#ACBB99</Setting>
<!-- 画布线条透明度 -->
<Setting name="CanvasLineAlpha">1</Setting>
<!-- 轴名称文本颜色 -->
<Setting name="AxisNameTextColor">#000000</Setting>
<!-- 轴名称字体大小 -->
<Setting name="AxisNameFontSize">10</Setting>
<!-- 轴名称字体加粗 -->
<Setting name="AxisNameFontBold">true</Setting>
<!-- X轴名称 -->
<Setting name="XAxisName">X轴</Setting>
<!-- Y轴名称 -->
<Setting name="YAxisName">Y轴</Setting>
<!-- 轴标签文本颜色 -->
<Setting name="AxisLabelTextColor">#000000</Setting>
<!-- 轴标签字体大小 -->
<Setting name="AxisLabelFontSize">10</Setting>
<!-- 轴标签字体加粗 -->
<Setting name="AxisLabelFontBold">false</Setting>
<!-- Y轴最大值 -->
<Setting name="YAxisMaxValue">100</Setting>
<!-- Y轴最小值 -->
<Setting name="YAxisMinValue">0</Setting>
<!-- Y轴分割值 -->
<Setting name="YAxisDivideValues">60</Setting>
<!-- Y轴标签表达式 -->
<Setting name="YAxisLabelExpression"><![CDATA[=Current()]]></Setting>
<!-- X轴标签表达式 -->
<Setting name="XAxisLabelExpression"><![CDATA[=Current()]]></Setting>
<!-- 柱形 -->
<!-- 柱形宽度比 -->
<Setting name="ColumnWidthScale">0.8</Setting>
<!-- 柱形填充透明度 -->
<Setting name="ColumnFillAlpha">1</Setting>
<!-- 柱形值表达式 -->
<Setting name="ColumnValueExpression"><![CDATA[=Fields!Value.Value]]></Setting>
<!-- 显示柱形标签 -->
<Setting name="ColumnLabelVisible">true</Setting>
<!-- 柱形标签文本颜色 -->
<Setting name="ColumnLabelTextColor">#000000</Setting>
<!-- 柱形标签字体大小 -->
<Setting name="ColumnLabelFontSize">11</Setting>
<!-- 柱形标签字体加粗 -->
<Setting name="ColumnLabelFontBold">false</Setting>
<!-- 柱形标签表达式 -->
<Setting name="ColumnLabelExpression"><![CDATA[=Fields!Value.Value]]></Setting>
</Settings>
<!-- 图表数据源 -->
<DataSource>
<!-- 数据序列集合 -->
<Serieses>
<!-- 数据序列。name属性:序列名称;Value子节点:序列值 -->
<Series name="Name">
<Value>张</Value>
<Value>黄</Value>
<Value>李</Value>
<Value>何</Value>
<Value>张</Value>
<Value>黄</Value>
<Value>李</Value>
<Value>何</Value>
<Value>张</Value>
<Value>黄</Value>
<Value>李</Value>
<Value>何</Value>
</Series>
<!-- 数据序列。name属性:序列名称;Value子节点:序列值 -->
<Series name="Subject">
<Value>语文</Value>
<Value>语文</Value>
<Value>语文</Value>
<Value>语文</Value>
<Value>数学</Value>
<Value>数学</Value>
<Value>数学</Value>
<Value>数学</Value>
<Value>英语</Value>
<Value>英语</Value>
<Value>英语</Value>
<Value>英语</Value>
</Series>
<!-- 数据序列。name属性:序列名称;Value子节点:序列值 -->
<Series name="Value">
<Value>50</Value>
<Value>65</Value>
<Value>85</Value>
<Value>60</Value>
<Value>60</Value>
<Value>90</Value>
<Value>80</Value>
<Value>90</Value>
<Value>70</Value>
<Value>75</Value>
<Value>80</Value>
<Value>95</Value>
</Series>
</Serieses>
</DataSource>
</ChartSettings>
相关文章推荐
- 图表篇——Xml To Chart (折线图3D)
- 使用DevExpress的WebChartControl控件绘制图表(柱状图、折线图、饼图)
- JFreeChart 图表生成实例(饼图、柱状图、折线图、时序图)
- MPAndroidChart开源图表库的使用介绍之饼状图、折线图和柱状图
- 使用DevExpress的WebChartControl控件绘制图表(柱状图、折线图、饼图)
- 自定义图表控件--同时显示柱状图和折线图
- RDLC报表系列(六) 多图表-折线图和柱状图
- POI导出excel+JFreeChart生成图表(柱状图和折线图)
- aChartEngine图表显示(饼图、柱状图、折线图)
- highcharts图表组件实战经验篇:如何设置柱状图柱子立体(颜色渐变)效果类似3D效果之linearGradient和stops
- Echarts 绘制简单的图表柱状图、折线图
- 【GraphMaker】Unity3D图表——柱状图、折线图、饼图
- 数据可视化:柱状图、折线图、饼图等六种基本图表的特点及适用场合
- Silverlight三维柱状图3D饼图的Silverlight图表组件案例
- #.JFreeChart 图表生成实例(饼图、柱状图、折线图、时序图)
- 使用DevExpress的WebChartControl控件绘制图表(柱状图、折线图、饼图)
- Silverlight三维柱状图3D饼图的Silverlight图表组件案例
- 【GraphMaker】Unity3D图表——柱状图、折线图、饼图
- Android图表超简单实现柱状图、折线图、饼状图(基于MpAndroidChart)
- 两种图表组合(柱状图和折线图),数据来自json对象