Data_analysis

Data_analysis
String [] allwords;
String delimiters=" ,.?!;:[]";
IntDict concordance;
PFont f;
int n=0;

void setup() {
  size(600, 400);
  pixelDensity(2);
  //load font
  f=createFont("arial", 12, true);

  //load the tale into rawtext array
  String url = "data.txt";
  String [] rawtext=loadStrings(url);

  //join the big array together as one long string
  String everything = join(rawtext, " ");
  allwords=splitTokens(everything, delimiters);

  //make a new empty dictionary
  concordance=new IntDict();
}

void draw() {
  background(255);

  //sort by values for largest to smallest
  concordance.sortValuesReverse();

  //cllect statistics one word a circle
  String s=allwords[n].toLowerCase();
  concordance.increment(s);
  
  //Create a array of keywords
  String [] keys=concordance.keyArray();
  //Create variables stand for total length and the row
  float tl, row;
  //Create vars' x,y coordination of text and the text heigth
  float xpos, ypos, fh;
  
  //Initialize those varibales every draw
  tl=0.0;
  row=0;
  fh=0.0;
  xpos=0;
  ypos=concordance.get(keys[0])*2+5;
  
  int findex=0;
  for (int i=0; i<keys.length; i++) {
    //Get the key name and its count
    String word=keys[i];
    float count=concordance.get(word);

    fill(0, i%2*100+155);
    textFont(f, count*2+5);

    row=int(tl/width);
    
    println(ypos);
    text(word, xpos, ypos);
    
    //Increase the values of x coordinate
    tl+=textWidth(word);
    xpos+=textWidth(word);
    
    //If the text near the right side, then come to next line
    if (int(tl/width)>row) {
      findex=i;
      fh=concordance.get(keys[findex])+5;
      ypos+=fh*1.2*2;
      xpos=0;
    }
    
  }
  //Stop the draw when finish cllect the statistics
  n++;
  if (n>=allwords.length) {
    noLoop();
  }
  
  saveFrame("frames/VisualizeConcordance####.jpg");
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容