我试图渲染一个简单的条形图,其中每个条形的标签为x轴上的轴标记.较长的标签相互影响.由于svg文本元素不支持自动换行,我一直在研究替代解决方案.
更改进入标签的类别文本以包含正确的<tspan>元素不起作用,因为文本未设置为innerHtml,而只是元素的原始文本.我还考虑过后处理标签以删除文本并用tspans替换它,但我还没有找到一种优雅的方法来做到这一点.
不幸的是我不能使用foreignObject,因为我需要IE9支持,但无论如何,许多相同的标记替换问题都适用于该解决方案.
有没有人过去很好地解决了这个问题或有任何建议?
我有一个ANTLR3 AST,我需要遍历一个后序,深度优先遍历,我已经实现了大致如下的Clojure:
(defn walk-tree [^CommonTree node]
(if (zero? (.getChildCount node))
(read-string (.getText node))
(execute-node
(map-action node)
(map walk-tree (.getChildren node)))))))
Run Code Online (Sandbox Code Playgroud)
我想使用循环... recur将其转换为尾递归,但我无法弄清楚如何有效地使用显式堆栈来执行此操作,因为我需要进行后序遍历.
我正在尝试编写一个PL/PgSQL函数,它将执行存储在PostgreSQL表中的查询,如下所示:
CREATE OR REPLACE FUNCTION evaluate_scenario(scenario_id int)
RETURNS TABLE(line_item_id int, organization_id int, data_element_id int, value varchar) AS $$
BEGIN
RETURN QUERY
SELECT
li.id,
li.organization_id,
de.id,
(EXECUTE 'SELECT ' || de.query)::varchar
FROM
line_items AS li INNER JOIN
summary_files AS sf ON li.summary_file_id = sf.id INNER JOIN
scenarios AS s ON s.summary_file_id = sf.id CROSS JOIN
data_elements AS de
WHERE
s.id = 1 AND
de.scope = 3 AND (
de.model_id = s.model_id OR
de.scenario_id = s.id OR
de.organization_id = s.organization_id
);
END; …Run Code Online (Sandbox Code Playgroud)