Trong một số previous question, tôi hỏi cộng đồng cách đếm tần suất của mỗi từ liên tiếp trong một câu và tôi nhận được câu trả lời tuyệt vời! bây giờ tôi đang cố gắng xây dựng một đám mây từ từ kết quả bằng cách sử dụng gói, pytagcloud.Làm thế nào để xây dựng một đám mây từ sạch bằng cách sử dụng pytagcloud mà không có hình ảnh đông đúc - Python
Vấn đề mà tôi có là hình ảnh được tạo ra là đông đúc và các từ được kết hợp với nhau. bất kỳ ý tưởng nào nếu có một hàm để phân tách các từ và làm cho chúng có thể đọc được hoặc nếu có cách nào khác để làm điều đó trong python.
Cảm ơn!
Mã của tôi dưới đây. đây là số link của văn bản tôi đã sử dụng để kiểm tra Tôi đã cố gắng sử dụng một số lượng nhỏ hơn của sự kết hợp từ nhưng điều đó không làm thay đổi độ đậm của văn bản trong hình.
Tôi cũng thêm vài chức năng như chơi với "bố cục" và "kích thước" và "fontname = 'Lobster' và fontzoom = 1" nhưng không có kết quả tối ưu nào là ảnh từ đám mây sạch sẽ. .
import operator
import urllib2
from roundup.backends.indexer_common import STOPWORDS
import requests, collections, bs4
Data = "TEXT FROM The link above- TEXT file"
two_words = [' '.join(ws) for ws in zip(Data, Data[1:])]
wordscount = {w:f for w, f in Counter(two_words).most_common() if f > 12}
sorted_wordscount = sorted(wordscount.iteritems(), key=operator.itemgetter(1))
print sorted_wordscount;
from pytagcloud import create_tag_image, create_html_data, make_tags, LAYOUT_HORIZONTAL, LAYOUTS, LAYOUT_MIX, LAYOUT_VERTICAL, LAYOUT_MOST_HORIZONTAL, LAYOUT_MOST_VERTICAL
from pytagcloud.colors import COLOR_SCHEMES
from pytagcloud.lang.counter import get_tag_counts
create_tag_image(make_tags(sorted_wordscount), 'filename.png', size=(1300,1150), background=(0, 0, 0, 255), layout=LAYOUT_MIX, fontname='Molengo', rectangular=True)
Đây là một ví dụ về kết quả đầu ra tôi nhận được: HERE
Kết quả tối ưu sẽ là một cái gì đó tương tự như một trong những hình ảnh HERE
Hi vinaut !!! cảm ơn bạn rất nhiều vì câu trả lời tuyệt vời của bạn !!! Tôi đã cố gắng sao chép kết quả nhưng tôi đã thất bại và đám mây của bạn trông đẹp hơn 1000 lần so với tôi! Bạn có thể xin vui lòng gửi mã của bạn để tôi có thể nhìn thấy những gì tôi đã làm sai? Một lần nữa, cảm ơn bạn rất nhiều!!!! – mongotop
Đừng lo lắng, hãy chỉnh sửa câu trả lời bằng mã được sử dụng để tạo hình ảnh. – vinaut
Cảm ơn bạn rất nhiều. PS - Bạn có một số phép thuật trong máy tính xách tay của bạn! :) http://imgur.com/CmoOB7y đây là những gì tốt nhất tôi có thể nhận được bằng cách sử dụng maxsize = 50 cho 25 từ, size = (1300,1100). Tôi không biết tại sao nó không làm cho các từ trong một hình chữ nhật như của bạn, ngay cả khi hình chữ nhật = True. – mongotop