python使用背景图片做词云图

 首先准备数据和图片:

 

图片:backgroud_Image = plt.imread('0.jpg')#路径

open("ciyuntu.txt" ,encoding="utf-8")as file:   #打开数据文件

from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS
import jieba
import numpy
import PIL.Image as Image
import matplotlib.pyplot as plt
#1.将字符串切分
def chinese_jieba(text):
    wordlist_jieba=jieba.cut(text)
    space_wordlist=" ".join(wordlist_jieba)
    return space_wordlist
with open("ciyuntu.txt" ,encoding="utf-8")as file:
    text=file.read()
    text=chinese_jieba(text)
    #2.图片遮罩层
    # mask_pic=numpy.array(Image.open("dog.png"))

    backgroud_Image = plt.imread('0.jpg')
    #3.将参数mask设值为:mask_pic
    wordcloud = WordCloud(background_color='white',max_words=10000,font_path="C:/Windows/Fonts/simkai.ttf",stopwords=STOPWORDS,mask=backgroud_Image).generate(text)
    image_colors = ImageColorGenerator(backgroud_Image)
    image=wordcloud.to_image()
    image.show()

背景图片:

效果:

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 要调整词云图背景图片,需要使用 Pyecharts 中的 WordCloud 类中的 set_global_opts() 方法,并在该方法中设置 background_image 属性。具体的代码如下: ```python from pyecharts.charts import WordCloud from pyecharts.globals import SymbolType words = [('Python', 100), ('Java', 80), ('C++', 60), ('JavaScript', 50), ('PHP', 40)] wordcloud = WordCloud() wordcloud.add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND) wordcloud.set_global_opts( title_opts={"text": "词云图示例", "subtext": "使用 Pyecharts"}, tooltip_opts={"formatter": "{b}: {c}"}, toolbox_opts={"feature": {"saveAsImage": {}}}, background_image="your_image.jpg" ) wordcloud.render("wordcloud.html") ``` 在上述代码中,我们通过 set_global_opts() 方法设置了词云图的标题、提示框、工具栏和背景图片。其中,background_image 属性指定了要使用背景图片的路径。您只需要将"your_image.jpg"替换为您自己的背景图片路径即可调整词云图背景图片。 ### 回答2: 使用pyecharts生成词云图时,可以通过调整词云图背景图片来增强其视觉效果。具体步骤如下: 1. 导入所需的库和模块: ``` python from pyecharts import options as opts from pyecharts.charts import WordCloud ``` 2. 创建一个WordCloud词云图对象: ``` python wordcloud = WordCloud() ``` 3. 设置词云图背景图片: ``` python wordcloud.set_global_opts( graphic_opts=opts.GraphicImage( graphic_item=opts.GraphicItem( id_='background', right=0, bottom=0, z=-10, bounding='raw', origin=[75, 75] # 设置图片底部的(x, y)坐标 ), graphic_image=[ { 'id': 'background', 'style': { 'image': 'background.jpg', # 设置背景图片的路径 'width': 800, # 设置图片的宽度 'height': 600 # 设置图片的高度 } } ] ) ) ``` 4. 添加词云图的数据和配置项: ``` python wordcloud.set_series_opts( wordcloud_opts=opts.WordCloudOpts( shape='circle', # 设置词云的形状,可选值有'circle', 'cardioid', 'diamond', 'triangle-forward', 'triangle', 'pentagon', 'star' width='80%', # 设置词云图的宽度 height='80%', # 设置词云图的高度 size_range=[30, 100], # 设置词云的字体大小范围 rotation_range=[-90, 90], # 设置词云中文字的旋转角度范围 ) ) ``` 5. 渲染并保存词云图: ``` python wordcloud.render('wordcloud.html') ``` 通过以上步骤,我们可以使用pyecharts生成带有自定义背景图片词云图,并且还可以继续调整其他的配置项,以满足自己的需求。 ### 回答3: 要调整词云图背景图片,可以使用pyecharts库中的WordCloud类的add函数,该函数有一个background_image参数,可以指定背景图片。 首先,需要准备一张适合作为背景的图片,并将其保存在本地。接下来,可以通过以下步骤来生成带有背景图片词云图: 1. 导入所需的pyechart相关库: ```python from pyecharts import options as opts from pyecharts.charts import WordCloud ``` 2. 创建一个WordCloud对象: ```python wordcloud = WordCloud() ``` 3. 添加词云图的数据,使用add函数添加词云图的文本数据,并指定背景图片: ```python wordcloud.add("", data, word_size_range=[20, 100], shape='image', background_image='path_to_background_image.jpg') ``` 其中,data为词云图的文本数据,word_size_range为词云图中词语的字体大小范围。 4. 配置词云图的样式: ```python wordcloud.set_global_opts(title_opts=opts.TitleOpts(title="词云图")) ``` 在这里可以自定义词云图的标题等样式。 5. 生成词云图并保存为html文件: ```python wordcloud.render('wordcloud.html') ``` 此时生成的词云图将以制定的背景图片为背景。 值得注意的是,为了使背景图片更好地适应词云图,可能需要根据具体的情况调整背景图片的大小和字体大小范围。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值