代码如下:

import turtle
yValues = [10.0,7.4,6.4,5.3,4.4,3.7,2.6]
def main():
t = turtle.Turtle()
t.hideturtle()
drawLine(t,0,0,300,0) #画x轴
drawLine(t,0,0,0,175) #画y轴
#画折线
for i in range(6):
drawLineWithDots(t,40 + (40 * i),15 * yValues[i],40 + (40 * (i+1)),15 * (yValues[i+1]),"blue")
drawTickMarks(t)
#给图上x y 轴上的间距点表上值
displayText(t)
def drawLine(t,x1,y1,x2,y2,colorP="black"):
t.up()
t.goto(x1,y1)
t.down()
t.pencolor(colorP)
t.goto(x2,y2)
def drawLineWithDots(t,x1,y1,x2,y2,colorP="black"):
t.pencolor(colorP)
t.up()
t.goto(x1,y1)
t.dot(5)
t.down()
t.goto(x2,y2)
t.dot(5)
def drawTickMarks(t):
for i in range(1,8):
drawLine(t,40*i,0,40*i,10) #画x轴上的间距点
drawLine(t,0,15 * max(yValues), 10, 15*max(yValues)) #画出y轴最上面的那一个点
drawLine(t,0,15 * min(yValues), 10, 15*min(yValues)) #画出y轴最下面的那一个点
def displayText(t):
t.pencolor("blue")
t.up()
#在对应的位置标出10.0
t.goto(-10,(15*max(yValues))-8)
t.write(max(yValues),align="center")
#再对应的位置标出2.6
t.goto(-10,(15*min(yValues))-8)
t.write(min(yValues),align="center")
#标出x轴上对应的点
x = 40
for i in range(2000,2013,2):
t.goto(x,-20)
t.write(str(i),align="center")
x += 40
#在这张折线图下方给点说明
t.goto(0,-50)
t.write("大学生吸烟率情况分析图",font=("Arial",16,"normal"))
main()

效果图如下:

python的turtle模块画折线图的更多相关文章

  1. Python——用turtle模块画海龟的第一步

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  2. python中turtle模块画正多边形

    画正多边形主要是计算多边形每个角度对应的外角的度数,计算出来这个度数即可画图,相对来说非常简单 以正六边形为例 import turtle import time t = turtle.Pen() f ...

  3. 使用Python的turtle模块画出简单的柱状图

    代码如下: import turtle heights = [856, 420,360,260,205] def main(): t = turtle.Turtle() t.hideturtle() ...

  4. 使用Python的turtle模块画出最简单的五角星

    代码如下: import turtle def main(): t = turtle.Turtle() t.hideturtle() lengthOfSize = 200 drawFivePointS ...

  5. python中matplotlib画折线图实例(坐标轴数字、字符串混搭及标题中文显示)

    最近在用python中的matplotlib画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...

  6. Matplotlib学习---用matplotlib画折线图(line chart)

    这里利用Jake Vanderplas所著的<Python数据科学手册>一书中的数据,学习画图. 数据地址:https://raw.githubusercontent.com/jakevd ...

  7. SAS 画折线图PROC GPLOT

    虽然最后做成PPT里的图表会被要求用EXCEL画,但当我们只是在分析的过程中,想看看数据的走势,直接在SAS里画会比EXCEL画便捷的多. 修改起来也会更加的简单,,不用不断的修改程序然后刷新EXCE ...

  8. echars画折线图的一种数据处理方式

    echars画折线图的一种数据处理方式 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...

  9. 使用OpenCV画折线图

    使用OpenCV画直方图是一件轻松的事情,画折线图就没有那么Easy了,还是使用一个库吧: GraphUtils 源代码添加入工程 原文链接:http://www.360doc.com/content ...

随机推荐

  1. HDU 4320 Arcane Numbers 1 (数论)

    A - Arcane Numbers 1 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

  2. ThinkPHP 多应用多模块建立方式

    ThinkPHP3.2.2及以后版本同一应用多模块和多应用多模块的设计已经比以前的版本更加简单快捷. 注:入口文件为index.php,内容为: <?php // +-------------- ...

  3. Logistic函数

    Logistic函数(又称sigmoid函数)        Logistic函数或Logistic曲线是一种常见的S形函数,它是皮埃尔·弗朗索瓦·韦吕勒在1844或1845年在研究它与人口增长的关系 ...

  4. 使用SpringMVC解决Ajax跨域问题

    package com.mengyao.system.filter; import java.io.IOException; import javax.servlet.FilterChain; imp ...

  5. Linux 内核链表的使用及深入分析【转】

    转自:http://blog.csdn.net/BoArmy/article/details/8652776 1.内核链表和普通链表的区别 内核链表是一个双向链表,但是与普通的双向链表又有所区别.内核 ...

  6. vim的插件管理与配置

    vim作为我做喜欢的编辑器,可扩展性几乎是没有尽头的,前阵子一直在配置这.vimrc文件,原来搞过配色文件,现在主要就自动补全来设置下,同时作为自己配置的记录文档.……………………………………………… ...

  7. 打包工具 Inno Setup 5

    转载: http://www.360doc.com/content/13/0327/13/4221543_274235049.shtml

  8. jquery.qrcode生成二维码支持中文

    基本使用方法: 1.首先在页面中加入jquery库文件和qrcode插件. <script type="text/javascript" src="jquery.j ...

  9. mysql 使用set names 解决乱码问题

    引子: 最近查询公司线上表数据,返现在Xshell控制台打印的数据都是乱码,记得之前瞄过同事都是执行set names UTF8 , 解决的,特记录如下.

  10. mySQL的存储过程详解

    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...