3

I'm trying to build a program to help me study Chinese, and one way that helps me remember characters is dividing them into components.

I'm using a website called dictionary.writechinese.com to do research, but I was wondering if there was a database containing the most popular characters and their components that I could have my program query instead of manually checking a website.

1
  • I didn't put it in my answer since I couldn't find a good way, but know that learning chinese by characters is like learning english by studying re-,-ed,un-,-ing,pyro-,etc. instead of regular words. Outside of an actual language study it may not be very efficient.
    – zagrycha
    Dec 2, 2022 at 18:38

8 Answers 8

6

Make me a Hanzi

This database dictionary.txt gives the decompositions of characters into components:

{"character":"侈","definition":"luxurious, extravagant","pinyin":["chǐ"],"decomposition":"⿰亻多","etymology":{"type":"ideographic","hint":"A person 亻 with more than they need 多"},"radical":"亻","matches":[[0],[0],[1],[1],[1],[1],[1],[1]]}
{"character":"侉","definition":"to speak with an accent; big and clumsy","pinyin":["kuǎ"],"decomposition":"⿰亻夸","etymology":{"type":"pictophonetic","phonetic":"夸","semantic":"亻","hint":"person"},"radical":"亻","matches":[[0],[0],[1],[1],[1],[1],[1],[1]]}
{"character":"例","definition":"precedent, example, case; regulation","pinyin":["lì"],"decomposition":"⿰亻列","etymology":{"type":"pictophonetic","phonetic":"列","semantic":"亻","hint":"person"},"radical":"亻","matches":[[0],[0],[1],[1],[1],[1],[1],[1]]}
{"character":"侌","pinyin":["yīn"],"decomposition":"⿱今云","etymology":{"type":"pictophonetic","phonetic":"今"},"radical":"人","matches":[[0],[0],[0],[0],[1],[1],[1],[1]]}

The database graphics.txt has high-quality svg vector-graphic data for each character.

 {"character":"吃","strokes":["M 145 546 Q 133 552 105 557 Q 92 561 89 555 Q 82 549 91 533 Q 122 457 138 334 Q 139 297 160 272 Q 178 250 183 265 Q 192 289 186 331 L 181 363 Q 162 484 158 518 C 155 542 155 542 145 546 Z","M 317 391 Q 332 499 360 531 Q 382 559 358 572 Q 337 582 308 600 Q 287 612 247 583 Q 217 568 145 546 C 116 537 130 508 158 518 Q 158 519 162 520 Q 208 533 246 544 Q 273 551 280 541 Q 289 534 281 492 Q 274 446 264 392 C 259 362 313 361 317 391 Z","M 186 331 Q 225 344 328 363 Q 338 364 338 373 Q 338 380 317 391 C 294 404 292 403 264 392 Q 218 374 181 363 C 152 354 157 322 186 331 Z","M 525 594 Q 556 637 578 683 Q 606 741 634 787 Q 644 803 627 818 Q 570 851 548 845 Q 535 842 539 826 Q 563 715 445 559 Q 418 532 388 490 Q 381 472 397 478 Q 439 490 506 571 L 525 594 Z","M 506 571 Q 515 562 554 554 Q 578 551 674 572 Q 821 611 824 612 Q 834 621 828 631 Q 819 644 786 651 Q 752 657 718 642 Q 676 626 631 614 Q 582 602 525 594 C 495 590 481 587 506 571 Z","M 455 390 Q 439 387 437 379 Q 436 372 444 368 Q 481 361 514 369 Q 536 382 565 390 Q 589 396 591 389 Q 594 383 557 325 Q 398 115 487 36 Q 488 36 491 33 Q 525 5 597 -11 Q 760 -50 946 31 Q 976 43 970 65 Q 954 128 949 226 Q 945 241 938 241 Q 932 242 925 225 Q 915 189 903 150 Q 887 95 841 76 Q 798 52 698 48 Q 598 44 560 62 Q 526 78 514 112 Q 498 187 618 320 Q 655 363 692 381 Q 717 394 709 407 Q 702 423 648 451 Q 627 464 599 449 Q 523 406 455 390 Z"],"medians":[[[98,547],[124,524],[130,511],[172,271]],[[157,526],[167,536],[196,547],[285,573],[322,546],[295,417],[271,399]],[[189,337],[199,352],[270,373],[329,372]],[[551,832],[586,791],[550,687],[533,650],[484,575],[399,489]],[[513,575],[636,588],[766,625],[805,627],[820,621]],[[446,377],[504,385],[587,417],[621,416],[637,403],[615,361],[515,222],[486,141],[485,106],[500,69],[530,43],[566,28],[653,13],[754,15],[829,30],[889,54],[917,73],[938,234]]]}

This free data is used for HanziWriter and many other sites.

1
  • 1
    Nice! Thanks for sharing. Dec 3, 2022 at 8:05
6

I created a Chrome extension that can track how frequent the word/character is used based on the Chinese websites you frequently read or visited

enter image description here

If you need to access the database, press F12 and then select Applications, then select Storage

enter image description here

1
  • Haven't try it yet, but sounds very helpful in some cases;) Dec 4, 2022 at 16:53
0

I'm not sure about if I understand what exactly you're looking for. But if you want to have a "full" Chinese characters, you can simply dump out the BIG5 (for traditional Chinese) or GB2312 (for simplified Chinese) characterset.

0

How about build your own db?

Copy and paste random texts from the internet.

Using Python, or whatever, get each character, increment the count each time.

I've heard, Chinese has about 50 000 different characters, so you'll never have more than 50 000 rows, not millions!

Sort the rows by column count, you will soon see a trend for the top 5000.

Doesn't seem to be a very challenging task. Do the work in Python, save to MySQL.

Whenever you have time, copy and paste another text, or webscrape texts.

If you are not familiar with MySQL, create a dictionary in Python, key is the character, value is the count. You can export a Python dictionary directly as .json and open it again as a dictionary.

You can use dict.getkey("而“)to see if that character is already in the dictionary. If not, getkey() returns None.

Might be fun to do!!

0

Why not write a simple query to Google or Baidu API to search for character use frequency on site. This can be done in Excel as well through XML interpretation. However, an existing good collection of most popular characters is the Table of General Standard Chinese Characters published in 2013 that standardized 8,105 frequently and commonly used characters. You may find other facts about Chinese characters interesting in this article: Mandarin vs Cantonese and Simplified vs traditional Chinese characters: Which to start learning with?

0

This is the table of character components that I have borrowed for my own software: Chinese Characters Decomposition. Actually, I present each character together with related ones (one component less, one component more, one component different). This does indeed seem to work much better than trying to memorize each character on its own. However, it is far more important to learn words or entire phrases rather than isolated characters.

0

It seemed there were only Mandarin examples listed here, but here is a Cantonese solution if you are looking to just find a character's frequency and components in Cantonese. There is an English option and Cantonese option if you select at the top of the website. Fair warning: it appears the website was created in 2003, so it's not the most aesthetically pleasing place to look.

CUHK Chinese Character Database 中文大學粵語審音配詞字庫

However it is quite simple in that it will only list one component in the character. The Pleco dictionary's Cantonese add-on provides more detailed radical information if that is more your objective.

-1

Learning characters themselves is often not considered a good way to learn chinese (vs learning actual vocab). I'm also not sure learning characters by component is a good way to learn characters themselves, since many characters have had radicals change and morph over time and it can be confusing even at higher levels. However everyone learns differently so you can decide how you learn best.

If you just want to know the most commonly occuring chinese characters, it is very simple. There are more places than you could list that will break vocab lists into 100 most common words, 500 most common words, 1000, 2000, etc. Most chinese words are not individual characters, so my first thought is to go through these lists and just record each character as its encountered. If the goal is just to record characters based on how frequently they are encountered, this would work.

A more efficient way is to use a dictionary that groups the characters themselves by use level 1-4 (or some similar ranking) like cantodict does. They list 700 characters at level 1 (most used). Note that a dictionary like cantodict probably has a few hundred characters total not used in mandarin, if mandarin is your only goal. There are probably mandarin specific dictionaries I don't know of that list by use.

All of these are great for if your goal is just to know the most used characters themselves. If your goal is to know which single character words are most used, I think it is a much more complicated question, since single character words are constantly combined and reduced from compound words as needed for clarity in chinese. I think it would be quite hard to make a definitive list outisde of context (although some basic lists of a few hundred words definitely exist). Note that a lone charcater may have completely different meanings and levels of usage from its common compounds.

P.S. I was recently admonished myself for looking characters up by radical the old fashioned way, as its very inefficient. However there are dictionaries like pleco that show you the main radical, which you could use to organize your characters by component. Note that some characters may not be as clear about main component/what it should be recognized as.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.