小编vas*_*ek1的帖子

如何在Matplotlib中设置图标题和轴标签字体大小?

我正在Matplotlib中创建一个像这样的人物:

from matplotlib import pyplot as plt

fig = plt.figure()
plt.plot(data)
fig.suptitle('test title')
plt.xlabel('xlabel')
plt.ylabel('ylabel')
fig.savefig('test.jpg')
Run Code Online (Sandbox Code Playgroud)

我想指定图标题和轴标签的字体大小.我需要三个不同的字体大小,所以设置全局字体大小(mpl.rcParams['font.size']=x)不是我想要的.如何单独设置图标题和轴标签的字体大小?

python matplotlib

466
推荐指数
7
解决办法
97万
查看次数

在每行数据帧上调用类似apply的函数,每行包含多个参数

我有一个包含多列的数据框.对于数据框中的每一行,我想调用该行上的函数,并且该函数的输入使用该行中的多个列.例如,假设我有这个数据,这个testFunc接受两个args:

> df <- data.frame(x=c(1,2), y=c(3,4), z=c(5,6))
> df
  x y z
1 1 3 5
2 2 4 6
> testFunc <- function(a, b) a + b
Run Code Online (Sandbox Code Playgroud)

假设我想将此testFunc应用于列x和z.因此,对于第1行,我想要1 + 5,对于第2行,我想要2 + 6.有没有办法在不编写for循环的情况下执行此操作,也许使用apply函数系列?

我试过这个:

> df[,c('x','z')]
  x z
1 1 5
2 2 6
> lapply(df[,c('x','z')], testFunc)
Error in a + b : 'b' is missing
Run Code Online (Sandbox Code Playgroud)

但有错误,任何想法?

编辑:我想要调用的实际函数不是一个简单的总和,但它是power.t.test.我只使用+ b作为示例.最终目标是能够做这样的事情(用伪代码编写):

df = data.frame(
    delta=c(delta_values), 
    power=c(power_values), 
    sig.level=c(sig.level_values)
)

lapply(df, power.t.test(delta_from_each_row_of_df, 
                        power_from_each_row_of_df, 
                        sig.level_from_each_row_of_df
))
Run Code Online (Sandbox Code Playgroud)

其中结果是每行df的power.t.test的输出向量.

r dataframe

145
推荐指数
8
解决办法
24万
查看次数

如何给pandas/matplotlib条形图自定义颜色

我刚开始使用pandas/matplotlib替代Excel来生成堆积条形图.我遇到了一个问题

(1)默认色图中只有5种颜色,所以如果我有超过5种颜色,则重复颜色.如何指定更多颜色?理想情况下,具有开始颜色和结束颜色的渐变,以及在两者之间动态生成n种颜色的方法?

(2)颜色在视觉上不是很悦目.如何指定n种颜色的自定义组?或者,渐变也可以.

以下两个例子说明了上述两点:

  4 from matplotlib import pyplot
  5 from pandas import *
  6 import random
  7 
  8 x = [{i:random.randint(1,5)} for i in range(10)]
  9 df = DataFrame(x)
 10 
 11 df.plot(kind='bar', stacked=True)
Run Code Online (Sandbox Code Playgroud)

输出是这样的:

在此输入图像描述

python matplotlib pandas

72
推荐指数
3
解决办法
8万
查看次数

排序熊猫系列

我试图弄清楚如何以智能方式对作为groupby聚合的结果生成的Series进行排序.

我生成一个我的DataFrame的聚合,如下所示:

means = df.testColumn.groupby(df.testCategory).mean()
Run Code Online (Sandbox Code Playgroud)

这导致了一个系列.我现在尝试按值排序,但得到一个错误:

means.sort()
...
-> Exception: This Series is a view of some other array, to sort in-place you must create a copy
Run Code Online (Sandbox Code Playgroud)

然后我尝试创建一个副本:

meansCopy = Series(means)
meansCopy.sort()
-> Exception: This Series is a view of some other array, to sort in-place you must create a copy
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用这种方法?

python sorting series pandas

22
推荐指数
1
解决办法
6932
查看次数

django - 如何使用request.FILES对post请求进行单元测试

我认为我有以下逻辑:

def view_function(request):
    if request.method == 'POST':
        uploadform = UploadFileForm(request.POST, request.FILES)
        if uploadform.is_valid():
            #do stuff
Run Code Online (Sandbox Code Playgroud)

UploadFileForm等于的位置:

class UploadFileForm(forms.Form):
    file = forms.FileField()
Run Code Online (Sandbox Code Playgroud)

我正在尝试为此视图编写单元测试.查看Django文档,建议的方法是:

class test_stuffTest(TestCase):
    def setUp(self):
        self.client = django.test.client.Client()
    ...
    def test_stuff(self):
        myfile = open('....\file.csv','r')
        response = self.client.post('/', {'name':'file.csv','attachment':myfile})
        #check response
Run Code Online (Sandbox Code Playgroud)

我的目标是让uploadform.is_valid()评估为True,这样我就可以测试表单验证之后的代码.当我运行上面的测试时,uploadform.is_valid()的计算结果为False.有什么我想念的吗?我的测试中的代码是将文件添加到request.FILES,还是在做其他事情?

python django unit-testing

14
推荐指数
2
解决办法
1万
查看次数

大熊猫箱形图中的胡须到底是什么?

在具有默认设置的python-pandas 箱图,红色条是平均值 ,而框表示第25和第75个四分位数,但在这种情况下,胡须究竟是什么意思呢?文档在哪里找出确切的定义(找不到它)?

示例代码:

df.boxplot()
Run Code Online (Sandbox Code Playgroud)

示例结果:

在此输入图像描述

boxplot pandas

14
推荐指数
4
解决办法
6196
查看次数

有没有办法使用除换行符之外的分隔符在python中循环读取文件

我通常在Python中读取这样的文件:

f = open('filename.txt', 'r')
for x in f:
    doStuff(x)
f.close()
Run Code Online (Sandbox Code Playgroud)

但是,这会按换行符拆分文件.我现在有一个文件,它的所有信息都在一行中(45,000个字符串用逗号分隔).虽然这个大小的文件使用类似的东西读取是微不足道的

f = open('filename.txt', 'r')
doStuff(f.read())
f.close()
Run Code Online (Sandbox Code Playgroud)

我很好奇,如果一个更大的文件全部在一行中,就可以实现与第一个代码片段类似的迭代效果,但是用逗号而不是换行符或任何其他字符进行拆分?

python

10
推荐指数
1
解决办法
3479
查看次数

OpenCV - 如何从uint8_t指针创建Mat

我有以下C++代码:

void foo(const uint8_t* data, int height, int width) {
  // need to create a cv::Mat from *data, which is a pointer to grayscale image data

  // doesn't work correctly (compiles, but array access on the mat leads to a segmentation fault)
  auto img = cv::Mat(height, width, CV_8UC1, &data);

  // how can I fix the line above to create a proper cv::Mat?
}

// I'm calling foo like this
// img is a grayscale image
foo(img.ptr<uint8_t>(0), img.cols, img.rows);
Run Code Online (Sandbox Code Playgroud)

有人能指出我在foo中创建矩阵的语法有什么问题吗?

c++ opencv

6
推荐指数
1
解决办法
6994
查看次数

如何更改 Bash 中的全局背景颜色

我在WebFaction(网络托管)上使用 Bash,并且想将我的终端更改为默认背景颜色而不是黑色(可能是白色,但我想尝试一下)。我该怎么做呢?

我尝试这样做:

cp /etc/DIR_COLORS ~/.dir_colors
(edit .dir_colors)
Run Code Online (Sandbox Code Playgroud)

但我只能找到各种目录和文件类型的前景色和背景色,而不是全局颜色。我应该去哪里看?

unix bash

5
推荐指数
1
解决办法
5632
查看次数

网页布局在页面之间略微移动 - 如何阻止它

我使用固定宽度的网站布局(1000px),布局通过自动边距在屏幕中居中.但是,我发现在网站的某些页面上,由于某种原因,布局与其他页面的位置略有不同.这对我来说是令人惊讶的,因为我使用Django并为每个页面提供相同的基本模板和样式表,所以我希望它们看起来一样.

例如,看看http://crh.vkuzo.com/.如果加载"主页"和"建议"页面,则布局保持完全相同.但是,如果您加载"约"页面,您可以看到布局略微向左移动.

造成这种轻微运动的原因是什么,我怎么能摆脱它呢?

PS这里是容器div的相关CSS(至少我认为是相关的):

#wholepage {
    width:1000px;
    clear:left;
    margin-top:10px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:10px;
}
Run Code Online (Sandbox Code Playgroud)

html css

2
推荐指数
2
解决办法
2775
查看次数

如何让Django返回模板,但在返回模板后继续执行进程?

我对网络开发很陌生,所以我只是想看看我是否对我想做的事情有了正确的认识.如果有任何术语错误,请原谅我.我的Django应用程序需要执行以下操作:

  1. 用户通过浏览器上传文件
  2. 文件由服务器处理(最多可能需要一个小时)
  3. 用户在浏览器中看到结果

我在如何完成第2步时遇到了麻烦...这就是我的想法:

1.User上传文件(非常简单)

2.文件被处理 - 视图函数将是这样的:

def process(request):
    a. (get file from the request)
    b. (return a page which says "the server is running your job, results will be available in {ETA}") 
    c. (start processing the data)
Run Code Online (Sandbox Code Playgroud)

3.User在浏览器中查看结果 - 浏览器定期查询服务器以查看作业是否完成.当作业准备就绪时,浏览器会获得结果.

我的问题是,在第2步b和c部分中,如何在不等待进程完成的情况下向浏览器返回响应?或者,在将结果返回浏览器后,如何确保进程继续运行?理想情况下,该进程应该可以访问Django环境变量,因为它可以通过Django的界面与数据库一起使用.

python django django-views

2
推荐指数
1
解决办法
178
查看次数

标签 统计

python ×6

pandas ×3

django ×2

matplotlib ×2

bash ×1

boxplot ×1

c++ ×1

css ×1

dataframe ×1

django-views ×1

html ×1

opencv ×1

r ×1

series ×1

sorting ×1

unit-testing ×1

unix ×1