Обработка - вкусная визуализация данных
Для школьного проекта я пытаюсь использовать Delicious API в платформе Processing.
У меня вопрос,
Пока что я могу визуализировать "Заголовки" и "Теги" отдельных постов на холсте обработки.
Мой код выглядит так.
Delicious delicious;
PFont font;
String title;
void setup() {
font = loadFont("HelveticaNeue-9.vlw");
textFont(font);
size(800, 1000);
// Initiate Delicious object. Replace username and password with your own info.
delicious=new Delicious("myusername", "mypassword");
// Retrieve recent posts. The result is a List object containing the
// Posts as del.icio.us.beans.Post objects. We'll use List.toArray() to
// give us an array of the Objects in the List.
Object [] o=delicious.getRecentPosts("", 150).toArray();
// Uncomment the following line to get all posts.
// Object [] o=delicious.getAllPosts().toArray();
// Convert the Objects to Posts
Post [] posts=new Post[o.length];
for (int i=0; i<posts.length; i++) {
posts[i]=(Post)o[i];
}
// Print the posts
println("Del.icio.us posts retrieved: "+posts.length);
for (int i=0; i<posts.length; i++) {
println(i+": "+posts[i]);
pushMatrix();
translate(50, 50);
float descriptionWidth = textWidth(posts[i].getDescription());
float tagWidth = textWidth(posts[i].getTag());
int margin = 30;
fill(50);
text(posts[i].getDescription(), 0, 20*i);
text(posts[i].getTime(), descriptionWidth + margin, 20*i);
fill(135);
text(posts[i].getTag(), descriptionWidth + margin, 20*i);
popMatrix();
}
}
То, что я хочу сделать, это то, что я хочу получить конкретный вид, подобный "дизайну", разбросать заголовки постов вокруг этого тега и нарисовать линию от центра к каждому из них...
Но в документации я не могу найти способ получить один конкретный тег в getTag()
метод.
Ссылка на документацию находится здесь, (getTag) http://delicious-java.sourceforge.net/del/icio/us/beans/Post.html
получить тег "дизайн" и напечатать заголовки постов, которые содержат тег "дизайн" вокруг него в случайном порядке.
Какая логика стоит за этим, вы можете мне это объяснить?
1 ответ
Поскольку вы перебираете все сообщения, используйте getTags(), чтобы получить строку, содержащую теги, проверьте, содержит ли он интересующий вас тег, и, если да, поместите сообщение в массив или список массивов. После перебора всех постов у вас будет список, содержащий все посты с нужным тегом.