如何在此jqplot脚本中旋转x轴标签

时间:2013-01-15 13:34:17

标签: javascript jqplot

以下是基于jqplot条形图示例的脚本的一部分。我试图旋转x轴刻度标签,因为它们重叠我导入了TickRender插件,但是当我 将以下代码添加到下面的脚本中,图表根本无法打印。

你能告诉我怎样才能正确地做到这一点。

tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
  tickOptions: {
     angle: -30,
     fontSize: '10pt'
  }

// jqplot script

$(document).ready(function(){
        $.jqplot.config.enablePlugins = true;
        var s1 = [2314,2053,94,70,2541,2626,2551,2515,2147,116,82,2536,2560,2558,2465,2127,103,73,2546,2554,2583,2527,2235,104,88,2515,2604,2641,2532,2142];
        var ticks = ['01/11/2012','02/11/2012','03/11/2012','04/11/2012','05/11/2012','06/11/2012','07/11/2012','08/11/2012','09/11/2012','10/11/2012','11/11/2012','12/11/2012','13/11/2012','14/11/2012','15/11/2012','16/11/2012','17/11/2012','18/11/2012','19/11/2012','20/11/2012','21/11/2012','22/11/2012','23/11/2012','24/11/2012','25/11/2012','26/11/2012','27/11/2012','28/11/2012','29/11/2012','30/11/2012'];

        plot1 = $.jqplot('chart1', [s1], {
            // Only animate if we're not using excanvas (not in IE 7 or IE 8)..
            animate: !$.jqplot.use_excanvas,
            seriesDefaults:{
                renderer:$.jqplot.BarRenderer,
                pointLabels: { show: true }

            tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
                tickOptions: {
                angle: -30,
                fontSize: '10pt'
                }

            },
            axes: {
                xaxis: {
                    renderer: $.jqplot.CategoryAxisRenderer,
                    ticks: ticks
                }



            },
            highlighter: { show: false }
        });

        $('#chart1').bind('jqplotDataClick',
            function (ev, seriesIndex, pointIndex, data) {
                $('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
            }
        );
    });

2 个答案:

答案 0 :(得分:4)

试试这个,

 axesDefaults: {
            tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
            tickOptions: {
                angle: -90,
                fontSize: '10pt'
            }
        },
        axes: {
            xaxis: {
                renderer: $.jqplot.CategoryAxisRenderer,
                ticks: ticks
            },
    }

OR

axes: {
       xaxis: {
              renderer:$.jqplot.DateAxisRenderer,
              ticks: ticks,
              tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
              tickOptions: {
                           angle: -90,
                           fontSize: '10pt'
                           }
              }
      }

OR

axes: {
           xaxis: {
                  renderer:$.jqplot.DateAxisRenderer,
                  ticks: ticks,
                  rendererOptions:{
                                 tickRenderer: $.jqplot.CanvasAxisTickRenderer ,
                                 tickOptions: {
                                              angle: -90,
                                              fontSize: '10pt'
                                              }
                                 }
                }
      }

答案 1 :(得分:0)

http://www.jqplot.com/examples/rotated-tick-labels.php

中加入以下文件
    <script class="include" type="text/javascript" src="js/jquery.jqplot.chartCode.js"></script>

    <script type="text/javascript" src="js/plugins/jqplot.dateAxisRenderer.js"></script>
    <script type="text/javascript" src="js/plugins/jqplot.canvasTextRenderer.js"></script>
    <script type="text/javascript" src="js/plugins/jqplot.canvasAxisTickRenderer.js"></script>
    <script type="text/javascript" src="js/plugins/jqplot.categoryAxisRenderer.js"></script>
    <script class="include" type="text/javascript" src="js/plugins/jqplot.pointLabels.js"></script>
    <script class="include" type="text/javascript" src="js/plugins/jqplot.barRenderer.js"></script>
    <script class="include" type="text/javascript" src="js/plugins/jqplot.pieRenderer.js"></script>