Anychart图表系列四之标题和图例

图标题和图例在图表元素中是不可或缺的一部分,标题能表达图的意思,图例能表达图的组成。


 

  • 标题

如上图所示,标题分为三种:Title(主标题)、Sub-Title(副标题)、Footer(脚注)。关于标题的Anychart参考文档可访问这里

 

启用三种标题的XML配置如下:

 

<chart_settings>
  <title enabled="True" />
  <subtitle enabled="True" />
  <footer enabled="True" />
</chart_settings>
 

 

设置enabled=true即可启用标题,这时会产生一个默认的名称,但是每个图都有自己的标题,所以标题名称还需要我们去配置,而配置标题名称,则需要增加一个<text>标签

 

<chart_settings>
  <title enabled="True">
    <text>Sales performance</text>
  </title>
  <subtitle enabled="True">
    <text>First Quarter Earnings: {%DataPlotYSum}</text>
  </subtitle>
  <footer enabled="True">
    <text>according to annual report</text>
  </footer>
</chart_settings>
 最后效果图如下

 在Anychart文档中提到标题还支持点击跳转事件,即点击标题可以跳转或者执行javascript方法,但是我本地实验过并没有什么效果(或许这个需要部署到服务器)。
<chart_settings>
        <title enabled="True" url="http://www.anychart.com" url_target="_blank">
          <text>Go to AnyChart.Com</text>
        </title>
        <subtitle enabled="True" url="http://www.sibental.Com" url_target="_blank">
          <text>Go to Sibental.Com</text>
          <background enabled="false" />
        </subtitle>
        <footer enabled="True" url="javascript:void(alert('Alert function called by AnyChart Footer'))" url_target="_self">
          <text>Call JS Alert Function</text>
          <background enabled="false" />
        </footer>
</chart_settings>
 
同时,标题的摆放位置也是可以调整的,下面配置讲主副标题摆放在最左边,同时竖直显示。
<chart_settings>
  <title position="Left" align="Center" align_mode="horizontal" align_by="DataPlot" enabled="True">
    <text>Sales performance</text>
  </title>
  <subtitle position="Left" align="Center" align_mode="horizontal" align_by="DataPlot" enabled="True">
    <text>in the First Quarter</text>
  </subtitle>
  <footer align="Far" align_by="Chart" enabled="True">
    <text>according to annual report</text>
  </footer>
</chart_settings>

标题文字大小也是可以改变的,通过设置<font>标签即可设置自己需要的标题大小和样式。
<chart_settings>
  <title enabled="True">
    <text>Sales performance</text>
    <font bold="True" underline="true" size="16" color="White">
      <effects>
        <drop_shadow enabled="true" />
      </effects>
    </font>
  </title>
  <subtitle enabled="True">
    <text>in the First Quarter</text>
    <font italic="True" size="12" />
  </subtitle>
  <footer enabled="True">
    <text>according to annual report</text>
    <font color="Blue" size="10" />
  </footer>
</chart_settings>
  
标题HTML化,前面我们知道通过<text>可以设置标题文字,那么Anychart也支持在<text>总设置HTML格式的标签文字,最后以HTML的形式渲染:
<chart_settings>
  <title enabled="True">
    <text><![CDATA[%cbegin<u><b><font size="16px" face="Verdana">Sales performance</font></b></u>%cend]]></text>
    <font render_as_html="True" />
  </title>
  <subtitle enabled="True">
    <text><![CDATA[%cbegin<i><font size="12px" face="Verdana">in the First Quarter</font></i>%cend]]></text>
    <font render_as_html="True" />
  </subtitle>
  <footer enabled="True">
    <text><![CDATA[%cbegin<font size="10px" color="#0000FF" face="Verdana">according to annual report</font>%cend]]></text>
    <font render_as_html="True" />
  </footer>
</chart_settings>
 
 
  • 图例
图例可以用于显示series名称、point名称以及混合自定义显示,要启用图例则必须在<chart_settings>下辛庄<legend>标签,如下代码:
<chart_settings>
  <legend enabled="True" />
</chart_settings>
 
如果只设置legend的属性enabled为true则会默认显示series名称的图例,那么想要显示point名称的图例会稍微复杂一点,如下面的配置:除了enabled启用图例外,还要设置图例的item source为points,同时<format>标签用于定义图例的显示格式, <format>{%Name} - {%Value}</format>表示显示point名称-point值。
<chart_settings>
  <legend enabled="True" ignore_auto_item="True">
    <format>{%Name} - {%Value}</format>
    <items>
      <item source="Points" />
    </items>
  </legend>
</chart_settings>
 

 
图例还提供了图例标题功能,用户可以自定义标题格式,如下XML代码:在<legend>标签中定义了<title>用于设置图例标题的属性,具体配置就不做解释了,相信看到XML大家都懂。
      <chart_settings>
        <legend enabled="True">
          <title enabled="True">
            <text>2004 - Quarters:</text>
            <font size="12" bold="True" color="Red" family="Times" />
            <background enabled="True">
              <border enabled="True" />
            </background>
          </title>
          <title_separator enabled="false" />
          <background enabled="false" />
        </legend>
      </chart_settings>
 

 
 默认图例的高度与图表数据区的高度一致(即如果是柱状图,图例最大高度就是柱子的高度,超过则显示滚动条),而且每个图例之间还有默认的间距,不过这些都可以控制,如下代码position表示图例放在图的什么位置,align_by表示图例高度与什么保持一致(如果设置为Chart则图例过多时可以接触到图的上下边框),rows_padding表示每个图例的上下间距(设置为0时间距会减小)
<legend enabled='True' position='Bottom' align_by='Chart' rows_padding='0' >
</legend>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值