Dieser Artikel führt Sie hauptsächlich in relevante Informationen ein, wie Sie mit Python in zehn Minuten Ihr eigenes personalisiertes Logo erstellen können. Um diesen Effekt zu erzielen, wird der Artikel sehr ausführlich anhand von Beispielcode vorgestellt Nützlich für jeden. Freunde, die es brauchen, können unten einen Blick darauf werfen.
Vorwort
kann die Wortwolke verwenden. Es ist nicht mehr ungewohnt. Es ist sehr einfach, das Wortwolkenpaket direkt aufzurufen. Seine Hauptfunktion besteht darin, Bilder basierend auf Textwörtern und Worthäufigkeit zu generieren, anhand derer Sie intuitiv den Anteil jedes Wortes erkennen können.
Vor kurzem wollte ich nur ein persönliches Logo erstellen, also habe ich beschlossen, dafür eine Wortwolke zu verwenden.
Wordcloud-Installation
pip install wordcloud
Wenn Sie pip zur Installation verwenden, wird während des Installationsvorgangs auf jeden Fall ein Fehler auftreten gemeldet und fordert Sie zur Installation von Microsoft Visual C++ 14.0 auf, dieser Installationsvorgang ist jedoch zeitaufwändig.
Es gibt eine andere Möglichkeit, das Problem zu lösen: Laden Sie die entsprechende WHL-Datei herunter und installieren Sie sie.
Nachdem die Datei heruntergeladen wurde, gehen Sie mit cmd in den Ordner, in dem sich die WHL-Datei befindet, und geben Sie dann den folgenden Befehl ein:
pip install wordcloud-1.4.1-cp36-cp36m-win_amd64.whl
Wordcloud-Codeverwendung
Nach erfolgreicher Installation beginnen wir sofort mit der Erstellung unserer Bilder.
from os import path from PIL import Image import numpy as np import matplotlib.pyplot as plt from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator d = path.dirname(__file__) # 读文本文件 text = open(path.join(d, 'data.txt')).read() # 读取自定义图片 alice_coloring = np.array(Image.open(path.join(d, "pic.jpg"))) # 你可以通过 mask 参数 来设置词云形状 wc = WordCloud(background_color="white",max_words=2000, mask=alice_coloring, max_font_size=60,random_state=102,scale=8, font_path="C:\Windows\Fonts\msyhbd.ttf").generate(text) wc.generate_from_text(text) print('开始加载文本') # 改变字体颜色 img_colors = ImageColorGenerator(alice_coloring) # 字体颜色为背景图片的颜色 wc.recolor(color_func=img_colors) # 显示词云图 plt.imshow(wc, interpolation="bilinear") # 是否显示x轴、y轴下标 plt.axis('off') plt.show() # 获得模块所在的路径的 d = path.dirname(__file__) # 将多个路径组合后返回 wc.to_file(path.join(d, "h16.jpg")) print('生成词云成功!')
Der obige Textinhalt wurde durch einen Crawler gesammelt. Nachdem Sie die Textquelle haben, bereiten Sie einfach das Bild vor, mit dem Sie eine Wortwolke generieren möchten.
Das Konfigurieren der Parameter von Wordcloud ist besonders wichtig für Bildeffekte. Im Folgenden konzentrieren wir uns auf die Bedeutung der Parameter von Wordcloud:
font_path: String-Schriftartpfad, unabhängig von der Schriftart muss angezeigt werden. Schreiben Sie den Schriftartpfad + Suffixnamen, z. B.: font_path = 'Heibody.ttf'
width: int (default=400) Die Ausgabe-Leinwandbreite, die Standardeinstellung ist 400 Pixel
height: int (default=200) Ausgabe-Leinwandhöhe, Standard ist 200 Pixel
prefer_horizontal: float (default=0.90 ) Horizontaler Satz von Wörtern Häufigkeit des Auftretens, Standard 0,9
Maske: nd-array oder Keine (Standard=Keine) Wenn der Parameter leer ist, wird die Wortwolke normal gezeichnet. Wenn die Maske nicht leer ist, werden die eingestellten Werte für Breite und Höhe ignoriert und die Form wird durch die Maske ersetzt. Die Teile außer Weiß werden nicht gezeichnet und der Rest wird zum Zeichnen der Wortwolke verwendet.
Skalierung: Float (Standard = 1) Vergrößert die Leinwand entsprechend dem Verhältnis. Bei der Einstellung 2 betragen Länge und Breite das Doppelte der ursprünglichen Leinwand.
min_font_size : int (Standard=4) Die angezeigte Mindestschriftgröße
font_step : int (Standard=1) Schriftschrittgröße, If Ist die Schrittgröße größer als 1, beschleunigt dies den Vorgang, kann jedoch zu größeren Fehlern in den Ergebnissen führen.
max_words: Zahl (Standard=200) Die maximale Anzahl der anzuzeigenden Wörter
stopwords: Satz von Zeichenfolgen oder Keine Die Einstellung ist erforderlich blockiert werden Wenn es leer ist, werden die integrierten STOPWORDS
background_color: Farbwert (Standard = „schwarz“) Hintergrundfarbe verwendet, z. B. background_color = „white“, die Hintergrundfarbe ist weiß.
max_font_size : int oder None (Standard=None) Die maximal angezeigte Schriftgröße
mode : string (default=“RGB“) Wann Der Parameter ist „RGBA“ und background_color ist nicht leer, der Hintergrund ist transparent.
relative_scaling: float (Standard=.5) Korrelation zwischen Worthäufigkeit und Schriftgröße
color_func: aufrufbar, Standard=Keine Neue Farbe generieren Funktion, wenn leer, self.color_func
regexp : string oder None (optional) Verwenden Sie reguläre Ausdrücke, um den Eingabetext zu trennen
Kollokationen: bool, default=True Ob die Kollokation zweier Wörter einbezogen werden soll
colormap: string oder matplotlib colormap, default=“viridis“ Weisen Sie jedem Wort zufällig eine Farbe zu, falls angegeben, color_func, this Methode wird ignoriert.
Effektanzeige
Bei den verwendeten Fotos handelt es sich um eigene Fotos des Bloggers.
——————Ende——————
Verwandte Empfehlungen:
Python-Socket zum Senden der HTTP(s)-Anfragemethode verwenden
Das obige ist der detaillierte Inhalt vonErstellen Sie mit Python in zehn Minuten Ihr eigenes personalisiertes Logo. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!