不要问我为什么666 2022-05-22 19:25 采纳率: 100%
浏览 48
已结题

python,turtle模块

使用turtle模块绘制词频统计结果,其中词频数据
wordFrequency=
{"the":104,"a":63,"to":42,"of":42,"Kevin":36,"he":32,"you":28,"and":28,"is":27,"i":26}
以柱状图的形式展示统计结果。

  • 写回答

1条回答 默认 最新

  • Hann Yang 全栈领域优质创作者 2022-05-22 21:21
    关注

    如下所示,主要在遍历字典时要凑好坐标位置有点麻烦:

    import turtle
    
    t = turtle.Pen()
    
    t.color("red")
    t.pensize(3)
    t.speed(0)
    
    wordFrequency = {"the":104,"a":63,"to":42,"of":42,"Kevin":36,"he":32,"you":28,"and":28,"is":27,"i":26}
    
    def Goto(x,y):
        t.penup()
        t.goto(x,y)
        t.pendown()
                  
    def rect(x,y,h,w=45):
        Goto(x,y)
        for i in range(2):
            t.forward(w)
            t.left(90)
            t.forward(h)
            t.left(90)
            t.fillcolor('red')
    
    start_x , start_y = -320, -200
    Goto(start_x , start_y)
    t.forward(630)
    
    for i,d in enumerate(wordFrequency.items()):
        rect(start_x + i*65, start_y ,d[1]*4 )
        tx = t.xcor()
        Goto(tx+(6-len(d[0]))*4, t.ycor()-25)
        t.write(d[0], font=('Arial',14,'normal'))
        Goto(tx + (8 if d[1]>100 else 12), t.ycor()+d[1]*4+30)
        t.write(d[1], font=('Arial',14,'normal'))
    
    t.hideturtle()
    t.done()
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月2日
  • 已采纳回答 5月25日
  • 创建了问题 5月22日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵