python与R画柱形图

11 篇文章 0 订阅

python画柱形图:

  • 基本图形
    向上向下分别生成12个数据,X为 0 到 11 的整数 ,Y是相应的均匀分布的随机数据。 使用的函数是plt.bar,参数为X和Y:
import matplotlib.pyplot as plt
import numpy as np

n = 12
X = np.arange(n)
Y1 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)
Y2 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)

plt.bar(X, +Y1)
plt.bar(X, -Y2)

plt.xlim(-.5, n)
plt.xticks(())
plt.ylim(-1.25, 1.25)
plt.yticks(())

plt.show()

这里写图片描述

  • 更改颜色和数据

用facecolor设置主体颜色,edgecolor设置边框颜色为白色,

plt.bar(X, +Y1, facecolor='#9999ff', edgecolor='white')

plt.bar(X, -Y2, facecolor='#ff9999', edgecolor='white')

这里写图片描述

用函数plt.text分别在柱体上方(下方)加上数值,用%.2f保留两位小数,横向居中对齐ha=’center’,纵向底部(顶部)对齐va=’bottom’:

for x, y in zip(X, Y1):

    # ha: horizontal alignment

    # va: vertical alignment

    plt.text(x + 0.4, y + 0.05, '%.2f' % y, ha='center', va='bottom')



for x, y in zip(X, Y2):

    # ha: horizontal alignment

    # va: vertical alignment

    plt.text(x + 0.4, -y - 0.05, '%.2f' % y, ha='center', va='top')

这里写图片描述

完整代码

# -*- coding: utf-8 -*-
"""
Created on Tue Dec 19 15:39:49 2017

@author: elenawang
"""

import matplotlib.pyplot as plt

import numpy as np



n = 12

X = np.arange(n)

Y1 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)

Y2 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)



plt.bar(X, +Y1, facecolor='#9999ff', edgecolor='white')

plt.bar(X, -Y2, facecolor='#ff9999', edgecolor='white')


for x, y in zip(X, Y1):

    # ha: horizontal alignment

    # va: vertical alignment

    plt.text(x + 0.4, y + 0.05, '%.2f' % y, ha='center', va='bottom')



for x, y in zip(X, Y2):

    # ha: horizontal alignment

    # va: vertical alignment

    plt.text(x + 0.4, -y - 0.05, '%.2f' % y, ha='center', va='top')



plt.xlim(-.5, n)

plt.xticks(())

plt.ylim(-1.25, 1.25)

plt.yticks(())



plt.show()

R柱形图

> num=seq(1,10)
> x1=round(runif(10,min=70,max=100))
> x2=round(rnorm(10,mean=80,sd=7))
> data=data.frame(num,x1,x2)
barplot(x2,names.arg = num,col='red')

这里写图片描述

水平,添加horiz=T
barplot(x2,names.arg = num,col='red',horiz=T)

这里写图片描述

彩色

barplot(as.matrix(data[,2:3]),beside=T,legend=num,col=heat.colors(5),border='white')

这里写图片描述


用R画直方图hist()
箱线图boxplot()
不在此赘述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python可以使用matplotlib库来柱状图。具体步骤如下: 1. 导入matplotlib库 ```python import matplotlib.pyplot as plt ``` 2. 准备数据 ```python x = ['A', 'B', 'C', 'D', 'E'] y = [10, 20, 30, 40, 50] ``` 3. 绘制柱状图 ```python plt.bar(x, y) plt.show() ``` 其中,plt.bar()函数用于绘制柱状图,第一个参数为x轴数据,第二个参数为y轴数据。 最后使用plt.show()函数显示图形。 ### 回答2: Python是一种流行的编程语言,而matplotlib是Python中最常用的可视化库之一。它可以用来创建各种不同类型的图表,包括柱状图。下面我们将详细介绍如何使用Matplotlib库创建柱状图。 ## 步骤1:安装Matplotlib库 Matplotlib库是Python安装包的一部分,如果您已经安装了Python,那么Matplotlib库应该已经安装了。但如果您发现没有,可以在命令行中使用以下命令进行安装: ``` pip install matplotlib ``` ## 步骤2:准备数据 在绘制柱状图之前,我们需要准备数据。柱状图一般用于展示不同类别之间的数量差异,因此需要至少2个类别的数据。这里我们使用一个简单的示例数据,展示不同城市的人口数量: ``` import matplotlib.pyplot as plt cities = ['Shanghai', 'Beijing', 'Guangzhou', 'Shenzhen'] population = [24256800, 21516000, 14043500, 12528300] ``` ## 步骤3:创建图表 现在我们可以创建一个图表,用于展示这个数据了。使用Matplotlib库,我们可以使用`plt.bar()`函数创建一个柱状图,这个函数需要两个参数: * 第一个参数是所有柱子的X轴坐标。 * 第二个参数是所有柱子的高度。 ``` plt.bar(cities, population) ``` ## 步骤4:添加标题和标签 为了让我们的图表更加清晰地表达数据,我们可以添加一些标题和标签。使用`plt.title()`函数添加标题,使用`plt.xlabel()`和`plt.ylabel()`函数添加X轴和Y轴的标签。 ``` plt.title('City Populations') plt.xlabel('Cities') plt.ylabel('Population') ``` ## 步骤5:显示图表 最后一步是使用`plt.show()`函数显示我们的图表。 ``` plt.show() ``` 这就是用Matplotlib库创建柱状图的完整过程了。使用这些步骤,可以创建各种不同类型的柱状图,以及添加其他自定义样式和大量其他的数学图表。 ### 回答3: Python 是一种非常流行的编程语言,被广泛应用于数据分析和可视化。其中,Matplotlib 是 Python 中常用的数据可视化库之一,可用于绘制多种图形,包括折线图、散点图、饼图、柱状图等。以下是介绍如何使用 Python 的 Matplotlib 库柱状图。 1. 导入模块 在绘制柱状图之前,首先需要导入 Matplotlib 的模块,一般可以使用以下语句进行导入: ```python import matplotlib.pyplot as plt ``` 2. 准备数据 绘制柱状图需要准备一些数据,这些数据可以是 Python 的列表、元组或 NumPy 数组等。以下是使用列表进行数据准备的一个示例: ```python # 定义 x 轴数据 x_data = ['A', 'B', 'C', 'D', 'E'] # 定义 y 轴数据 y_data = [10, 20, 30, 15, 25] ``` 3. 绘制柱状图 有了数据之后,就可以开始绘制柱状图了。Matplotlib 库提供了一个 `bar()` 函数,该函数可以用来绘制柱状图。以下是如何使用 `bar()` 函数进行绘图的示例代码: ```python # 绘制柱状图 plt.bar(x_data, y_data) # 添加标题和标签 plt.title('柱状图示例') plt.xlabel('X 轴') plt.ylabel('Y 轴') # 显示图像 plt.show() ``` 运行以上代码,就可以得到一个简单的柱状图,如下所示: ![柱状图示例](https://img-blog.csdn.net/20180719131333220?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jaHVhbmdkZWZhdWx0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85/images/blogpython.jpeg) 4. 指定柱状图的模式和颜色 除了上面的示例,我们还可以通过修改参数,指定柱状图的模式和颜色。一般可以使用以下参数进行设置: - `width`:柱状图的宽度 - `color`:柱状图的颜色 - `edgecolor`:柱状图的边框颜色 - `align`:柱状图的对齐方式 以下是使用以上参数绘制柱状图的示例代码: ```python # 定义柱状图的宽度 width = 0.5 # 定义柱状图的颜色 color = ['r', 'g', 'b', 'm', 'c'] # 绘制柱状图 plt.bar(x_data, y_data, width=width, color=color, edgecolor='k', align='center') # 添加标题和标签 plt.title('柱状图示例') plt.xlabel('X 轴') plt.ylabel('Y 轴') # 显示图像 plt.show() ``` 运行以上代码,就可以得到一张更加个性化的柱状图了,如下所示: ![柱状图示例](https://img-blog.csdn.net/20180719131350544?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jaHVhbmdkZWZhdWx0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85/images/blogpython_color.jpeg) 总之,使用 Python 的 Matplotlib 库绘制柱状图非常简单,只需要几行代码就可以完成,甚至还可以进行更多的个性化设置,帮助我们更好地展示数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值