精华内容
下载资源
问答
  • python绘图

    2016-12-24 15:38:20
    python绘图matplotlibMatplotlib 可能是 Python 2D-绘图领域使用最广泛的套件,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图使用 import matplotlib.pyplot as plt plt.bar(left = 0,height = 1)...

    python绘图

    matplotlib

    Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图

    使用

    
    import matplotlib.pyplot as plt  
    
    plt.bar(left = 0,height = 1)
    plt.plot([1,2,3,4])  # 划线函数
    plt.ylabel('some numbers')    #为y轴加注释
    plt.show()
    

    划线函数Plot

    plot()还可以接受xy成对的参数,还有一个可选的参数是表示线的标记和颜色,plot函数默认画线是蓝色实线,即字符串'b-',你可以选择自己喜欢的标记和颜色。
    
    import matplotlib.pyplot as plt
    plt.plot([1,2,3,4], [1,4,9,16], 'ro')
    plt.axis([0, 6, 0, 20])
    plt.show()
    
    展开全文
  • Python绘图Turtle库详解

    万次阅读 多人点赞 2017-08-02 17:36:45
    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形...

            Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

    turtle绘图的基础知识:

    1. 画布(canvas)

            画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。

            设置画布大小

             turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的宽(单位像素), 高, 背景颜色。

            如:turtle.screensize(800,600, "green")

                   turtle.screensize() #返回默认大小(400, 300)

            turtle.setup(width=0.5, height=0.75, startx=None, starty=None),参数:width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,(startx, starty): 这一坐标表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心。

            如:turtle.setup(width=0.6,height=0.6)

                   turtle.setup(width=800,height=800, startx=100, starty=100)


    2. 画笔

    2.1 画笔的状态

            在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。这里我们描述小乌龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向), turtle绘图中,就是使用位置方向描述小乌龟(画笔)的状态。

    2.2 画笔的属性

            画笔(画笔的属性,颜色、画线的宽度等)

            1) turtle.pensize():设置画笔的宽度;

            2) turtle.pencolor():没有参数传入,返回当前画笔颜色,传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。

            3) turtle.speed(speed):设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快。

    2.3 绘图命令

             操纵海龟绘图有着许多的命令,这些命令可以划分为3种:一种为运动命令,一种为画笔控制命令,还有一种是全局控制命令。

    (1)    画笔运动命令

    命令

    说明

    turtle.forward(distance)

    向当前画笔方向移动distance像素长度

    turtle.backward(distance)

    向当前画笔相反方向移动distance像素长度

    turtle.right(degree)

    顺时针移动degree°

    turtle.left(degree)

    逆时针移动degree°

    turtle.pendown()

    移动时绘制图形,缺省时也为绘制

    turtle.goto(x,y)

    将画笔移动到坐标为x,y的位置

    turtle.penup()

    提起笔移动,不绘制图形,用于另起一个地方绘制

    turtle.circle()

    画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

    setx( )

    将当前x轴移动到指定位置

    sety( )

    将当前y轴移动到指定位置

    setheading(angle)

    设置当前朝向为angle角度

    home()

    设置当前画笔位置为原点,朝向东。

    dot(r)

    绘制一个指定直径和颜色的圆点

     

    (2)     画笔控制命令

    命令

    说明

    turtle.fillcolor(colorstring)

    绘制图形的填充颜色

    turtle.color(color1, color2)

    同时设置pencolor=color1, fillcolor=color2

    turtle.filling()

    返回当前是否在填充状态

    turtle.begin_fill()

    准备开始填充图形

    turtle.end_fill()

    填充完成

    turtle.hideturtle()

    隐藏画笔的turtle形状

    turtle.showturtle()

    显示画笔的turtle形状

     

    (3)    全局控制命令

    命令

    说明

    turtle.clear()

    清空turtle窗口,但是turtle的位置和状态不会改变

    turtle.reset()

    清空窗口,重置turtle状态为起始状态

    turtle.undo()

    撤销上一个turtle动作

    turtle.isvisible()

    返回当前turtle是否可见

    stamp()

    复制当前图形

    turtle.write(s [,font=("font-name",font_size,"font_type")])

    写文本,s为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项

     

    (4)    其他命令

    命令

    说明

    turtle.mainloop()或turtle.done()

    启动事件循环 -调用Tkintermainloop函数。

    必须是乌龟图形程序中的最后一个语句。

    turtle.mode(mode=None)

    设置乌龟模式(“standard”“logo”“world”)并执行重置。如果没有给出模式,则返回当前模式。

    模式

    初始龟标题

    正角度

    standard

    向右(东)

    逆时针

    logo

    向上(北)

    顺时针

    turtle.delay(delay=None)

    设置或返回以毫秒为单位的绘图延迟。

    turtle.begin_poly()

    开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点。

    turtle.end_poly()

    停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连。

    turtle.get_poly()

    返回最后记录的多边形。

     

    3. 命令详解

            3.1 turtle.circle(radius, extent=None, steps=None)

            描述:以给定半径画圆

            参数:

            radius(半径):半径为正(负),表示圆心在画笔的左边(右边)画圆;

            extent(弧度) (optional);

            steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)。

    举例:

    circle(50) # 整圆;

    circle(50,steps=3) # 三角形;

    circle(120, 180) # 半圆

     

    实例:

    1、太阳花

    # coding=utf-8
    import turtle
    import time
    
    # 同时设置pencolor=color1, fillcolor=color2
    turtle.color("red", "yellow")
    
    turtle.begin_fill()
    for _ in range(50):
    turtle.forward(200)
    turtle.left(170)
    turtle.end_fill()
    
    turtle.mainloop()
    


    2、五角星

    # coding=utf-8
    import turtle
    import time
    
    turtle.pensize(5)
    turtle.pencolor("yellow")
    turtle.fillcolor("red")
    
    turtle.begin_fill()
    for _ in range(5):
      turtle.forward(200)
      turtle.right(144)
    turtle.end_fill()
    time.sleep(2)
     
    turtle.penup()
    turtle.goto(-150,-120)
    turtle.color("violet")
    turtle.write("Done", font=('Arial', 40, 'normal'))
    
    turtle.mainloop()
    


    3、时钟程序

    # coding=utf-8
     
    import turtle
    from datetime import *
     
    # 抬起画笔,向前运动一段距离放下
    def Skip(step):
        turtle.penup()
        turtle.forward(step)
        turtle.pendown()
     
    def mkHand(name, length):
        # 注册Turtle形状,建立表针Turtle
        turtle.reset()
        Skip(-length * 0.1)
        # 开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点。
        turtle.begin_poly()
        turtle.forward(length * 1.1)
        # 停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连。
        turtle.end_poly()
        # 返回最后记录的多边形。
        handForm = turtle.get_poly()
        turtle.register_shape(name, handForm)
     
    def Init():
        global secHand, minHand, hurHand, printer
        # 重置Turtle指向北
        turtle.mode("logo")
        # 建立三个表针Turtle并初始化
        mkHand("secHand", 135)
        mkHand("minHand", 125)
        mkHand("hurHand", 90)
        secHand = turtle.Turtle()
        secHand.shape("secHand")
        minHand = turtle.Turtle()
        minHand.shape("minHand")
        hurHand = turtle.Turtle()
        hurHand.shape("hurHand")
       
        for hand in secHand, minHand, hurHand:
            hand.shapesize(1, 1, 3)
            hand.speed(0)
       
        # 建立输出文字Turtle
        printer = turtle.Turtle()
        # 隐藏画笔的turtle形状
        printer.hideturtle()
        printer.penup()
        
    def SetupClock(radius):
        # 建立表的外框
        turtle.reset()
        turtle.pensize(7)
        for i in range(60):
            Skip(radius)
            if i % 5 == 0:
                turtle.forward(20)
                Skip(-radius - 20)
               
                Skip(radius + 20)
                if i == 0:
                    turtle.write(int(12), align="center", font=("Courier", 14, "bold"))
                elif i == 30:
                    Skip(25)
                    turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))
                    Skip(-25)
                elif (i == 25 or i == 35):
                    Skip(20)
                    turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))
                    Skip(-20)
                else:
                    turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))
                Skip(-radius - 20)
            else:
                turtle.dot(5)
                Skip(-radius)
            turtle.right(6)
            
    def Week(t):   
        week = ["星期一", "星期二", "星期三",
                "星期四", "星期五", "星期六", "星期日"]
        return week[t.weekday()]
     
    def Date(t):
        y = t.year
        m = t.month
        d = t.day
        return "%s %d%d" % (y, m, d)
     
    def Tick():
        # 绘制表针的动态显示
        t = datetime.today()
        second = t.second + t.microsecond * 0.000001
        minute = t.minute + second / 60.0
        hour = t.hour + minute / 60.0
        secHand.setheading(6 * second)
        minHand.setheading(6 * minute)
        hurHand.setheading(30 * hour)
        
        turtle.tracer(False) 
        printer.forward(65)
        printer.write(Week(t), align="center",
                      font=("Courier", 14, "bold"))
        printer.back(130)
        printer.write(Date(t), align="center",
                      font=("Courier", 14, "bold"))
        printer.home()
        turtle.tracer(True)
     
        # 100ms后继续调用tick
        turtle.ontimer(Tick, 100)
     
    def main():
        # 打开/关闭龟动画,并为更新图纸设置延迟。
        turtle.tracer(False)
        Init()
        SetupClock(160)
        turtle.tracer(True)
        Tick()
        turtle.mainloop()
     
    if __name__ == "__main__":
        main()

    展开全文
  • Python绘图

    千次阅读 2019-09-03 23:16:13
    1、小甲鱼绘图转码 用的pillow库 from PIL import Image img = Image.open('mby.jpg') #L表示灰度模式 out = img.convert('L') #查看一下图片的大小 print(out.size) width,height=out.size #图片太大了,...

    1、小甲鱼绘图转码

    用的pillow库

    from PIL import Image
    img = Image.open('mby.jpg')
    #L表示灰度模式
    out = img.convert('L')
    #查看一下图片的大小
    print(out.size)
    width,height=out.size
    #图片太大了,改一下图片的尺寸,将它变得小一点
    out = out.resize((int(width*0.1),int(height*0.08)))
    width,height=out.size
    #从黑到简的一个个字符的模拟
    asciis = '@%#*+=-. '
    #初始化一个字符串用来保存
    texts = ""
    for row in range(height-1) :
        for col in range(width-1):
            gray = out.getpixel((col,row))
            texts += asciis[int(gray / 255 * 9)]
            #要记得换行
        texts += '\n'
    with open('ll.txt','w') as file :
        file.write(texts)
    

    毛不易

    转码后的效果
    转码效果

    2、验证码

    一个加上自定义字体的验证码图片
    但要注意你的电脑上是不是有这个字体,在Windows环境,字体一般位于C:\WINDOWS\Fonts文件夹下。用户可以到此文件夹中查看Python程序中指定的字体是否存在。如果不存在,会产生OSError: cannot open resource错误。

    from captcha.image import ImageCaptcha
    
    image = ImageCaptcha(fonts=['data/RAVIE.TTF','data/TEMPSITC.TTF'])
    image.write('sharon','captcha2.png')
    
    展开全文
  • python绘图示例

    2018-07-30 20:41:34
    简单的python绘图示例 。
  • Python绘图解决中文显示乱码问题 解决方法出自《对比Excel,轻松学习python数据分析》 plt.rcParams['font.sans-serif']='simHei'#seiHei:好像是代表宋体的意思 写于2019-11-15,上海 喜欢可以关注【小猪课堂】...

    Python绘图解决中文显示乱码问题
    解决方法出自《对比Excel,轻松学习python数据分析》

    plt.rcParams['font.sans-serif']='simHei'#seiHei:好像是代表宋体的意思
    

    写于2019-11-15,上海
    喜欢可以关注【小猪课堂】公众号

    展开全文
  • 1、Plotly被称为史上最好的绘图工具之一,为了更好的展示金融数据的复杂性。...具体到编程代码,就是各种python绘图模块库,传统的python绘图模块有,Matplotlib、Ggplot、Seaborn等。Plotly 绘图底层使...
  • 主要介绍了python绘图方法,实例分析了Python的绘图技巧,涉及Python中matplotlib模块的使用方法,需要的朋友可以参考下
  • mataplotlib --- 绘制精美的图标 ...它提供了一套和MATLAB相类似的绘图函数集,特别适合在用短小的一段代码来实现一个图标的绘制,但也是一个与Python其他函数库协调工作,并且可以完美的支持相关Python的各种库函数。
  • 详解Python绘图Turtle库

    2020-09-18 14:02:47
    Turtle库是Python语言中一个很流行的绘制图像的函数库,这篇文章主要介绍了Python绘图Turtle库的相关知识,需要的朋友可以参考下
  • python绘图函数

    千次阅读 2017-07-31 14:22:49
    python绘图函数
  • python绘图网络包

    2015-01-25 14:10:11
    python绘图网络包 资源及其安装说明
  • Python绘图相关知识

    万次阅读 2019-04-12 09:51:45
    Python绘图 本文是基于Win 10系统环境,演示python绘图工具: Windows 10 PyCharm for Linux python 3.6.8 for Linux 1. 绘制二维简单图像 使用matplotlib工具集,绘制sin(x)和cos(x)函数图像 import numpy as ...
  • Python 新功能:或将允许安全工具查看运行时操700x255 - 40KB - PNGArrow: Python 灵活、优雅、多功能日期库640x299 - 18KB - JPEGArrow: Python 灵活、优雅、多功能日期库640x646 - 37KB - JPEG怎么用Python把文字...
  • 主要介绍了Python 绘图和可视化详细介绍的相关资料,需要的朋友可以参考下
  • 我有一个256x256个numpy的数据数组,它经常被更改。每次迭代时,我都会拍一张快照来拍电影。...在问题是:有没有加快matplotlib3d曲面绘图的方法,还是有更快的python绘图工具?在下面是一些代码...
  • 主要介绍了Python绘图之柱形图绘制详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 本篇文章介绍了python使用turtle库绘制四叶草的...python绘图四叶草import turtledef draw_shapes():window = turtle.Screen()window.bgcolor("red")flower = turtle.Turtle()flower.speed(10)flower.shape("arro...
  • python绘图四叶草

    千次阅读 2020-02-17 15:11:48
    本篇文章介绍了python使用turtle库绘制四叶草的方法...python绘图四叶草 import turtle def draw_shapes(): window = turtle.Screen() window.bgcolor("red") flower = turtle.Turtle() flower.speed(10) ...
  • python turtle模块即海龟绘图的使用方法,对于需要进行图形编程会有一定的借鉴价值。python turtle模块简介:python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics)1、.使用海龟绘图首先我们需要...
  • 经常重复使用的绘图代码使用SciencePlots画论文配图可见:传送门折线图import matplotlib.pyplot as pltimport matplotlib as mpl# 中文和负号的正常显示mpl.rcParams['font.sans-serif'] = ['Times New Roman']mpl....
  • 程序就是代码,可以去研究数据,去设计算法诸如此类,殊不知程序也可以用来绘图,在编程中绘图甚至比在office中绘图更容易、更准确、更能把握参数的准确性,下面就一起来见识python中ImageDraw模块的绘图功能。...
  • python绘图 添加文字Adding text to a plot is one of the most used features of matplotlib.pyplot and there is a function defined for this operation i.e. matplotlib.pyplot.text(). 将文本添加到绘图是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,675
精华内容 6,670
关键字:

python绘图

python 订阅