Невозможно изначально повернуть метки в графвизе.
Ваши варианты могут быть:
1. Поставьте этикетки в виде изображений. В этом случае вы можете вращать их в своем графическом редакторе по своему усмотрению:
digraph {
a [
image="one.png"
label=""
]
b [
image="two.png"
label=""
]
a -> b [label=<
>];
}
Результат:
2. Если вам нужно повернуть метки на всем графике, вы можете попробовать нарисовать график, повернутый изначально, а затем повернуть все изображение, например, с помощью атрибута графика rotate :
digraph {
rotate=90
a [
label="One"
]
b [
label="Two"
]
a -> b [label="label"];
}
Результат:
WordNet Ruby кажется, что делает то, что Вы ищете:
WordNet Ruby является интерфейсом Ruby к WordNetВ® Lexical Database. WordNet является лексической ссылочной системой онлайн, дизайн которой вдохновлен текущими психолингвистическими теориями человеческой лексической памяти. Английские существительные, глаголы, прилагательные и наречия организованы в наборы синонима, каждый представляющий одно базовое лексическое понятие. Различные отношения связывают наборы синонима.
Я обнаружил веб-сервис для этого вчера.
Переходят в Британский совет домашняя страница и двойной щелчок по любому слову (который уже не является гиперссылкой).
Это должно открыть всплывающее окно с Кембриджским Словарным определением в нем. API относительно прост (и это общедоступный API, я вчера проверил его):
http://dictionary.cambridge.org/learnenglish/results.asp?searchword=SEARCH_PHRASE&dict=L
Для ссылки, вот код, который они используют для запуска этого при двойном щелчке:
/* BC double-click pop-up dictionary */
var NS = (navigator.appName == "Netscape" || navigator.product == 'Gecko') ? 1 : 0;
if (NS) document.captureEvents(Event.DBLCLICK);
document.ondblclick = dict;
var dictvar;
function dict() {
if (NS) {
t = document.getSelection();
pass_to_dictionary(t);
} else {
t = document.selection.createRange();
if(document.selection.type == 'Text' && t.text != '') {
document.selection.empty();
pass_to_dictionary(t.text);
}
}
}
function pass_to_dictionary(text) {
//alert(text);
if (text > '') {
window.open('http://dictionary.cambridge.org/learnenglish/results.asp?searchword='+text+ '&dict=L', 'dict_win', 'width=650,height=400,resizable=yes,scrollbars=yes');
}
}
существуют также обертки для API dictionary.com (несколько лет)
http://rubyforge.org/snippet/detail.php?type=snippet&id=53
http://rubyforge.org/snippet/detail.php?type=snippet&id=52
и wiktionary
http://eightpence.com/ninjawords-a-fast-online-dictionary-fast-like-a-ninja/
Wordnik.com имеет несколько API словаря-инфо, включая API определений. Более подробная информация здесь: http://developer.wordnik.com/
[Я работаю на Wordnik. Скоро у нас будет больше API, дайте нам знать, чего вы хотите!]