2011-08-04 63 views
5

好吧,我有条形图。 它基本上可以工作......但是y轴上的标签有点长,然后包装,然后碰到对方。更改jqplot中y轴标签区域的宽度

我试过改变CSS,但它得到由JS超过。 我试图扫描通过jqplot库找出它发生的地方,但我迷路了。 任何想法?有没有我可以设置的选项?

你可以在这里看到:

enter image description here

这里是我的html文件:

<html> 
<head> 
<!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]--> 
<script language="javascript" type="text/javascript" src="jquery.min.js"></script> 
<script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script> 
<script language="javascript" type="text/javascript" src="jqplot.barRenderer.min.js"></script> 
<script language="javascript" type="text/javascript" src="jqplot.categoryAxisRenderer.js"></script> 
<link rel="stylesheet" type="text/css" href="jquery.jqplot.css" /> 
<script> 
    $(function() { 
     graph_me('chart1',[ 'This is a label', 'This is another label..', 'Is this too long? This looks like it might break','Im not sure, but '], [40, 20, 5, 1]); 
    }); 
    function graph_me(div_name, labels_in, values_in) { 
     var labels = labels_in.reverse(); 
     var values = values_in.reverse(); 
     $.jqplot(div_name, [values], { 
      series:[{ 
       renderer:$.jqplot.BarRenderer, 
       rendererOptions: { 
        barDirection: 'horizontal', 
        varyBarColor: true 
        } 
       } 
      ], 
      axes: { 
       yaxis: { 
        renderer: $.jqplot.CategoryAxisRenderer, 
        ticks: labels, 
        tickOptions: { 
         showGridline: false, 
         markSize: 0 
        } 
       } 
      } 
     }); 
    } 
</script> 
</head> 
<body> 
<div id="chart1" style="height:400px;width:500px; margin: 0 auto;"></div> 
</body> 
</html> 
+0

我遇到的SAE问题icchanobot - 您是否设法找到解决方案? – davy

+0

@davy:下面的解决方案为我工作,我想我只需要'!important'部分 – icchanobot

回答

7

你可以在你的CSS试试这个:

.jqplot-yaxis { 
    margin-left:-80px !important; 
    width:80px !important; 
} 
+0

嘿谢谢,我用一个非常类似于这个的答案弄清楚了。 – icchanobot