我是靠谱客的博主 敏感金毛,最近开发中收集的这篇文章主要介绍python绘制堆叠图_python,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

当我在 Layout 中设置 barmode ='group'时,而 trace2 = Bar( ...,yaxis ='y2'),这导致条形图堆叠或覆盖而不是分组。如何在具有多个轴的同时对这些条进行分组? 我检查了这些但无济于事: 在单个a轴上分组的条形图显示在此处。 > 在此处并解释了多轴,并为y轴提供了参考可在此处 解决方案 对于现在遇到这篇文章的人来说,plotly现

36

2020-05-28

IT屋

我试图绘制一个堆叠条形图与python Matplotlib和我有正值和负值,我想画。我已经看过其他帖子谈论如何绘制积极的条形图与正值和负值,但没有一个使用Matplotlib做了,所以我找不到我的解决方案。 带有负JSON数据的堆积条形图 d3.js具有正值和负值的堆叠条形图 Highcharts垂直 我使用这个代码在python中用matplotlib绘制堆叠条形图: im

5133

2016-11-20

IT屋

由于某种原因,我无法在bokeh中绘制面积图。 下面是用于相同代码的代码。 from bokeh.charts导入区域,显示,output_file Areadict = dict( I = df ['IEXT' ], Date = df ['Month'], O = df ['OT'] ) area = Area(Areadict,x ='Date ',y =

10

2020-09-22

IT屋

我有一堆要像这样堆叠在3D中的2D直方图(方形2D numpy数组): (图片来自:Cardenas,Alfredo E.等人,“ N-的无辅助运输膜上的乙酰基L-色氨酸酰胺:动力学的实验和模拟。“物理化学学报116.9(2012):2739-2750。) 有人吗?好主意该怎么做?我已经从 Python图-堆叠图像切片中尝试了contourf方法,但是结果不尽人意。 谢谢。

31

2020-05-06

IT屋

如何绘制Python Pandas多索引数据框为带有组标签的条形图?是否有任何绘图库直接支持此功能?此 SO帖子显示了使用matplotlib的自定义解决方案,但是有直接支持吗? 例如: 总部公司 第一季度蓝色100 绿色300 第二季度蓝色200 绿色350 第三季度蓝色300 绿色400 Q4蓝色400 绿色450 名称:count,dtype:int64

37

2020-05-24

IT屋

我有一个合成数据集,其中包含1000个各种阶数的嘈杂多边形和sin / cos曲线,可以使用python seaborn将它们绘制为线。 由于我有很多重叠的线,所以我想绘制一些线图的热图或直方图。 我尝试遍历各列并汇总计数以使用seaborn的热图图,但是由于有很多行,这需要相当长的时间。 下一个最佳选择导致我想要的东西是一个六边形图(带有Seaborn关节图)。 但这是运行时

8

2020-11-22

IT屋

PyQt初学者教程 - 从简单和简单的步骤学习PyQt,从基本到高级概念,包括简介,Hello World,主要类,使用Qt设计器,信号和插槽,布局管理器,QBoxLayout,QGridLayout,QFormLayout类,QLabel Widget, QLineEdit Widget,QPushButton Widget,QRadioButton Widget,QCheckBox Widget,QComboBox Widget,QSpinBox Widget,QSlider Widget和Signal,QMenuBar,QMenu和QAction Widgets,QToolBar Widget,QDialog Class,QMessageBox,QInputDialog,QFontDialog Widget,QFileDialog Widget,QTabWidget,QStackedWidget, QSplitter小部件,多文档界面,拖放,数据库处理,绘图API,BrushStyle常量,QClipboard,QDockWidget,QStatusBar小部件,QListWidget,QPixmap类,QScrollBar小部件,QCalendar小部件。

562

2019-06-16 09:57:18

IT屋

wxPython初学者教程 - 从基本到高级概念的简单简单步骤学习wxPython,其中包括简介,环境,Hello World,wx.Frame类,wx.Panel类,GUI Builder工具,主要类,事件处理,布局管理,BoxSizer,GridSizer,FlexiGridSizer,GridBagSizer,StaticBoxSizer,按钮,StaticText类,TextCtrl类,RadioButton和RadioBox,CheckBox类,ComboBox和选择类,Gauge类,滑块类,菜单项,菜单和MenuBar,ToolBar类,Dialog类, NoteBook类,可停靠Windows,多文档界面,SplitterWindow类,绘图API,HTMLWindow类,ListBox和ListCtrl类,拖放。

350

2019-06-16 10:05:51

IT屋

初学者Python深度学习教程 - 从简单和简单的步骤学习Python深度学习,从基本到高级概念,包括简介,环境,基本机器学习,人工神经网络,深度神经网络,基础知识,训练神经网络,计算图,应用程序,库和框架,实现。

81

2019-06-16 10:06:12

IT屋

使用Python进行机器学习初学者教程 - 使用Python从简单而简单的步骤学习机器学习,从基本到高级概念,包括简介,概念,环境设置,学习类型,数据预处理,分析和可视化,培训和测试数据,技术,算法,应用。

81

2019-06-16 10:07:16

IT屋

z-index的嵌套

z-index的嵌套

z-index

复制代码

如果定位元素z-index没有发生嵌套(并列的):

1>后来者居上的准则;

2>哪个大哪个上

如果定位元素z-index发生嵌套:

1>祖先优先原则

前提:z-index是数值,不是auto

z-index:auto元素不会建立一个新的本地堆叠上下文。当前堆叠上下文中新生成的元素和父元素堆叠层级相同。

参考:http://www.cnblogs.com/benbendu/p/5811534.html

Python numpy矩阵数组操作基本语法

numpy_base

复制代码

# numpy 向量操作

## 求向量模长

``````

import numpy as np

x = np.array([1,2,3,4,5])

np.linalg.norm(x) # 默认求二范数

np.linalg.norm(x,ord=1) # 求一范数

``````

![](https://ws1.sinaimg.cn/large/cdd040eely1g1ivoq3tmhj20h005swep.jpg)

## 求两个向量叉乘(cross product)

``````

numpy.cross(a,b,axisa=-1, axisb=-1, axisc=-1, axis=None)

``````

``````

x = [1, 2, 3]

y = [4, 5, 6]

np.cross(x, y)

# Output:array([-3, 6, -3])

``````

# numpy矩阵操作

## 矩阵乘法

``````

# 矩阵:

A = np.array([[1, 2, 3], [4, 5, 6]]) # 2 x 3矩阵

B = np.array([[1, 2], [3, 4], [5, 6]]) # 3 x 2矩阵

np.dot(A,B)

# Output: [[22 28]

[49 64]]

# 向量:

a = np.array([1, 2, 3])

b = np.array([4, 5, 6])

np.dot(a,b)

# Output: 32

``````

## 两矩阵对应元素相乘(数乘)

``````

A = np.array([[1, 2, 3], [4, 5, 6]])

B = np.array([[7, 8, 9], [4, 7, 1]])

A * B

# 等价于np.multiply(A,B)

# Output:[[ 7 16 27]

[16 35 6]]

``````

## 两矩阵的拼接

``````

a = array([0, 1, 2],

[3, 4, 5],

[6, 7, 8])

b = array([ 0, 2, 4],

[ 6, 8, 10],

[12, 14, 16])

# 按垂直方向堆叠

c = np.vstack((a,b))

# Output:

c = array([ 0, 1, 2],

[ 3, 4, 5],

[ 6, 7, 8],

[ 0, 2, 4],

[ 6, 8, 10],

[12, 14, 16])

# 按水平方向拼接

d = np.hstack((a,b))

# Output:

d = array([ 0, 1, 2, 0, 2, 4],

[ 3, 4, 5, 6, 8, 10],

[ 6, 7, 8, 12, 14, 16])

# 按深度方向堆叠

e = np.dstack((a,b))

# Output:

e = array([[ 0, 0],

[ 1, 2],

[ 2, 4],

[ 3, 6],

[ 4, 8],

[ 5, 10],

[ 6, 12],

[ 7, 14],

[ 8, 16]])

# 多维矩阵按任意axis堆叠

f = np.concatenate((a,b),axis=1) # axis = 1相当于水平堆叠

``````

## 所有矩阵元素取exp

``````

np.exp(A)

``````

# 矩阵的保存和读取

``````

filename1 = 'train_leftleg_pos.dat'

import _pickle as pickle

output1 = open(filename1, 'wb')

pickle.dump(train, output1)

file1 = open(filename1, 'rb')

train = pickle.load(file1)

file1.close()

``````

readme.md

复制代码

[TOC]

# Relay IR介绍

Relay IR是第二代NNVM。这里简单总结设计目标,在后面对每个要点进行详细介绍。

- 支持传统的数据流编程和转换。

- 支持functional-style scoping,让它绑定和构造成功能完整的不同语言。

- 允许用户混合两种编程风格

## 使用Relay构建计算图

传统的深度学习框架使用计算图作为其中间表示IR。计算图(或数据流图)是表示计算的有向无环图(DAG)。尽管由于缺乏控制流,数据流图在它们能够表达的计算方面受到限制,但是它们的简单性使得更容易实现异构执行环境的自动区分和编译(例如,在专用硬件上执行图的部分)。

![](https://raw.githubusercontent.com/tvmai/tvmai.github.io/master/images/relay/dataflow.png)

你可以使用Relay构建计算(数据流)图。具体来说,上面的代码显示了如何构造一个简单的双节点图。你可以发现该示例的语法与现有的计算图形IR(如NNVMv1)没有区别,唯一的区别在于术语:

- 现有框架通常使用图和子图

- Relay使用函数(例如,`fn(%x)`)表示图

每个数据流节点都是Relay中的CallNode。 Relay Python DSL允许你快速构建数据流图。我们要在上面的代码中强调一件事 - 我们显式构造了一个Add节点,其输入点都指向%1。当深度学习框架评估上述程序时,它将按拓扑顺序计算节点,而%1将仅计算一次。虽然这件事对于深度学习框架构建者来说非常自然,但这可能会让PL研究人员首先感到惊讶。如果我们实现一个简单的访问者打印出结果并将结果视为嵌套的Call表达式,它将变为log(%x)+ log(%x)。

当DAG中存在共享节点时,这种不明确性是由程序语义的不同解释引起的。在正常的函数式编程IR中,嵌套表达式被视为表达式树,而不考虑%1实际上在%2中重复使用两次的事实。

Relay IR与传统深度学习框架的细微差异在于,通常深度学习框架用户以这种方式构建计算图,其中经常发生DAG节点重用。当我们以文本格式打印出中继程序时,我们每行打印一个CallNode并为每个CallNode分配一个临时id(%1,%2),以便在程序的后续部分中引用每个公共节点。

## Module:支持多函数(Graphs)

dia.md

复制代码

### Specs

* 开源

* 使用SDI(Single Document Interface, 即每个组件窗口包括他自己独立的菜单和工具栏, 与MDI相对)模式, 类似于GIMP.

* Dia将多种需求以模组化来设计(modular design), 如流程图(flowchart), 网络图(network diagram), 电路图(circuit diagram)等. 各模组之间的符号(shap packages)仍是可以通用的, 并没有限制.

* Dia有特殊的对象(special objects)来帮助画一些图: entity-relationship model, UML(Unified Modeling Language) diagrams, flowcharts, network diagrams 和 simple electrical circuit.

* 可以通过写简单的XML文件来增加支持性的图形(shape), 使用SVG(Scalable Vector Graphics)的子集来画图形.

* Dia 加载和保存diagrams使用一个自定义的XML格式, gzipped压缩过来节省空间. 并且可以打印大的diagrams横跨多个页面.

* 导出格式: EPS(Encapsulated PostScript), SVG(Scalable Vector Graphics), DXF(Autocad's Drawing Interchange format), CGM(Computer Graphics Metafile defined by ISO standards), WMF(Windows Meta File), PNG(Portable Network Graphics), JPEG(joint Photographic Experts Group), VDX(Microsoft's XML for Visio Drawing)

* Dia是用C写的, 有一个插件系统, 支持脚本语言Python.

loadBiz

biz.c

复制代码

void BinManager::loadBiz(unsigned int group,const std::string& path)

{

Data data=FileUtils::getInstance()->getDataFromFile(path);

if(data.isNull())return;

std::string frameName;

ByteArray* ba=ByteArray::buildC((char*)data.getBytes(),data.getSize());

short file_num=ba->readInt();

int frame_id=0,file_id=0;

int i,j,k,frame_num=0;

short file_width,file_height,dir_count,frame_count;

short fx,fy,fw,fh,ox,oy,sw,sh,ro;

Vec2 change;

for(i=0;i

{

file_id=ba->readInt();

if(file_id<=0)continue;

file_width=ba->readShort();

file_height=ba->readShort();

frame_num=ba->readShort();//总帧数

dir_count=ba->readShort();//几个方向

frame_count=ba->readShort(); //每个方向帧数

FrameData* wfd=new FrameData();

wfd->mFileID=file_id;

wfd->mDirCount=dir_count;

wfd->mFrameCount=frame_count;

wfd->mFrameData=new FrameInfo**[wfd->mDirCount];

for(k=0;kmDirCount;k++)

{

wfd->mFrameData[k]=new FrameInfo*[wfd->mFrameCount];

for(j=0;jmFrameCount;j++)

{

wfd->mFrameData[k][j]=nullptr;

}

}

change = getOffVec(group,file_id);

for(j=0;j

{

frame_id=ba->readInt();

fx=ba->readShort();//小图在大图的x坐标

fy=ba->readShort();//小图在大图的y坐标

fw=ba->readShort();//小图在大图的占有宽度

fh=ba->readShort();//小图在大图的占有高度

ox=ba->readShort();// x方向偏移量

oy=ba->readShort();// y方向偏移量

sw=ba->readShort();// 原图width大小

sh=ba->readShort();//原图height大小

ro=ba->readShort();

FrameInfo* frame = new FrameInfo();

frame->id=frame_id;

float difx = ox - 24 + 0.5 * fw + change.x;

float dify = -(oy - 16) - 0.5*fh - change.y;

frame->frame=Rect(fx,fy,fw,fh);

frame->offset = Vec2(difx, dify);

frame->sourceSize=Size(sw,sh);

frame->rotated=ro>0?true:false;

wfd->mFrameData[frame_id/10000][frame_id%10000]=frame;

}

if(mFrameMapList[group].find(file_id)==mFrameMapList[group].end())

{

mFrameMapList[group][file_id]=wfd;

}

else

{

delete wfd;

}

}

delete ba;

if(group==AVATAR_CLOTH)

{

loadNoDir();

loadSimpleFile();

loadActionInfo();

}

else if(group==AVATAR_WEAPON)

{

loadDoubleIdle();

loadDoublePrepare();

}

else if(group==AVATAR_EFFECT)

{

loadEffectInfo();

loadSoundInfo();

}

}

biz.py

复制代码

#!/usr/bin/env python3

import struct

import sys

st = struct.Struct(

'

"i"

"h" # w

"h" # h

"h" # frames

"h" # dirs

"h" # n-per-frame

)

st2 = struct.Struct(

'

"i"

"h" # x

"h" # y

"h" # w

"h" # h

"h" # x-off

"h" # y-off

"h" # w

"h" # h

"h" # rotate

)

def main(fn):

f = open(fn, 'rb')

N = int.from_bytes(f.read(4), 'little')

print(N)

for i in range(N):

bs = f.read(st.size)

n, w, h, frames, dirs, frames_per_dir = st.unpack(bs)

assert w==500

assert h==500

#assert frames_per_dir*dirs==frames, (frames_per_dir, dirs, frames)

print(w, h, frames, dirs, frames_per_dir)

for i in range(frames):

line = st2.unpack(f.read(st2.size))

print('t', line)

print(f.read())

f.close()

if __name__ == '__main__':

main(sys.argv[1])

蟒蛇中使用matplotlib的绘图功能

python中使用matplotlib的绘图功能,python,matplotlib,plot,plt

python_matplotlib.md

复制代码

# 使用ipython交互式绘图功能

```zsh

$ ipython --matplotlib

```

# 导入常用包

```python

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

import scipy.stats as scs

from sympy import *

```

# matplotlib中的Figure和AxesSubplot对象

```python

# 创建Figure对象

fig = plt.figure()

# 创建一个AxesSubplot对象

ax = fig.add_subplot(1, 1, 1) # 可以使用简易写法fig.add_subplot(111)

# 在一个2 x 2的布局中,创建其中一个subplot

ax = fig.add_subplot(2, 2, 1) # 返回2行x2列中第1个subplot

ax = fig.add_subplot(223) # 返回2行x2列中第3个subplot

# 使用Figure对象一次创建2x3个subplot(NumPy二维数组,squeeze参数调节维度)

axes = fig.subplots(nrows=2,ncols=3) # 2行 x 3列

# 使用plt一次性创建新的Figure和2x3个subplot(NumPy二维数组,squeeze参数调节维度)

fig, axes = plt.subplots(1)

fig, axes = plt.subplots(2,3) # 2行 x 3列

# 返回fig对象下的subplot对象列表

axes2 = fig.get_axes()

# 下面两个subplot是同一对象

axes2[0] is axes[0][0]

# 调整subplot间的间距

plt.subplots_adjust(wspace=0.1, hspace=0.1) # 间距的宽和高,百分比,0.1=10%

fig.subplots_adjust(wspace=0.1, hspace=0.1)

# 得到当前Figure和AxesSubplot对象

plt.gcf()

plt.gca()

fig.gca()

# 清除当前AxesSubplot内容

plt.cla()

ax.cla()

ax.clear()

# 清除当前Figure内容

plt.clf()

fig.clf()

fig.clear()

# 关闭窗口

plt.close()

```

# 绘制函数

```python

fig, axes = plt.subplots(2,2)

# 绘制函数y=x^2

x = np.linspace(-2, 2, num=100)

y = x**2

# 在最后一次使用过的subplot上绘制图像,没有则创建一个

plt.plot(x, y)

# 也可以在指定的subplot绘图

ax1 = axes[0,0]

ax1.plot(x, y)

# 绘制函数x*sin(x)

x = np.linspace(-100,100,1000)

y = list(map(lambda x: x*sin(x), x))

ax2 = axes[0,1]

ax2.plot(x, y)

# 使用pd.Series对象绘制函数sin(x)/x

x = np.linspace(-100,100,1000)

s = pd.Series(x, index=x)

s = s.apply(lambda x: sin(x)/x)).astype(float)

# 在最后一次使用过的subplot上绘制图像,没有则创建一个

s.plot();

# 指定subplot绘图

ax3 = axes[1,0]

s.plot(ax=ax3)

```

# 设置图形的颜色、标记和线形

```python

ax.plot(x, y, 'ro--')

# 等价于

ax.plot(x, y, color='r', marker='o', linestyle='--')

```

# 设置坐标轴范围、刻度、标签和图例

```python

# 以下Y轴与X轴设置一样,只要把x改成y即可

# 得到和设置当前subplot的X轴范围

plt.xlim()

plt.xlim([-5, 5])

# 同时得到和设置X轴和Y轴范围

plt.axis()

plt.axis([-5, 5, -5, 5])

# X轴范围

ax.get_xlim()

ax.set_xlim([-2, 2])

ax.axis()

# X轴刻度

ax.get_xticks()

ax.set_xticks([-2, -1, 0, 1, 2])

# X轴刻度标签

ax.get_xticklabels()

ax_set_xticklabels(['-two', '-one', 'zero', 'one', 'two'], rotation=30, fontszie='small')

# X轴名称

ax.get_xlabel()

ax.set_xlabel('Steps')

# 坐标轴标题

ax.get_title()

ax.set_title('My first matplotlib plot')

# 设置X, Y轴刻度长度一样

ax.set_aspect('equal')

```

# [绘制直方图(Histogram)](https://github.com/khrapovs/dataanalysispython/blob/master/lectures/matplotlib.ipynb)

- 条形图是用条形的长度表示各类别频数的多少,其宽度(表示类别)则是固定的;

- 直方图是用面积表示各组频数的多少,矩形的高度表示每一组的频数或频率,宽度则表示各组的组距,因此其高度与宽度均有意义。

- 由于分组数据具有连续性,直方图的各矩形通常是连续排列,而条形图则是分开排列。

- 条形图主要用于展示分类数据,而直方图则主要用于展示数据型数据

```python

mu, sigma = 100, 15

x = mu + sigma * np.random.randn(10000)

n, bins, patches = plt.hist(x, 50, normed=1, facecolor='g', alpha=0.75, lw=0)

plt.plot(bins, scs.norm.pdf(bins, mu, sigma), lw=2, c='b', ls='--')

plt.xlabel('Smarts')

plt.ylabel('Probability')

plt.title('Histogram of IQ')

plt.text(60, .025, r'$mu=100, sigma=15$')

plt.axis([40, 160, 0, 0.03])

plt.grid()

plt.show()

```

最后

以上就是敏感金毛为你收集整理的python绘制堆叠图_python的全部内容,希望文章能够帮你解决python绘制堆叠图_python所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部