0

我正在尝试渲染饼图的图例,使其具有固定的宽度,并且当标签达到该宽度(div 持有人)时,在下一行连字符。我尝试了行选项,但效果不佳,因为我的数据是动态的,有时我说 3 个数据集,每个数据集都呈现在单独的行中,而在其他时候我有 15-20 个数据集,它变得凌乱。

无论如何,解决方案是将图例限制为 div 的宽度,它被渲染成,但它似乎不接受任何 css 更改。我尝试添加宽度:250px;对于 jqPlot css 中的“jqplot-table-legend”,我还尝试使用 Chrome 中的 Inspect Element 将其添加到各个地方以测试它是否有效,但它似乎不接受新的宽度。我还尝试将其硬编码到各个地方的 javascript 文件中,但没有成功。

我不确定我可以在代码方面添加什么到问题中。在 jqPlot 方面,一切都是相当标准的。

任何有关如何解决此问题的建议将不胜感激。

4

1 回答 1

0

这似乎是一种快速而肮脏的方式,但它可以完成工作。我将使用 jqplot.pieRenderer.js 文件作为示例,因为它比缩小版本更容易阅读。打开 js 文件并向下滚动到第 568 行。就在下面

this._elem = $(document.createElement('table'));
this._elem.addClass('jqplot-table-legend');

添加

this._elem.css({width: 300});

这会将桌子拉伸到您需要的任何宽度。不幸的是,它还会用颜色样本拉长列,因此您现在需要向下滚动一点,直到找到

td1.css({textAlign: 'center', paddingTop: rs});

将其更改为

td1.css({width: 16, textAlign: 'center', paddingTop: rs});

你应该准备好了。

于 2012-11-13T15:05:16.167 回答