标签: scale

为什么尺度会产生矩阵?

scale似乎是一个有用的函数,但它从数字向量生成矩阵,如下所示:

class(scale(mtcars$drat))
# [1] "matrix"
Run Code Online (Sandbox Code Playgroud)

是否有一个函数可以生成数字向量而不必执行类似的操作as.numeric(scale(x))

r scale

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

如何将数组缩放到另一个长度,保存 R 中的近似值

我有两个长度不同的数组

value <- c(1,1,1,4,4,4,1,1,1)
time <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
Run Code Online (Sandbox Code Playgroud)

如何调整value数组大小以使其长度与time数组相同,并保存其近似值?

approx()函数告诉我们长度不同。

我想让value数组像

value <- c(1,1,1,1,1,4,4,4,4,4,4,1,1,1,1)
time <-  c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
Run Code Online (Sandbox Code Playgroud)

所以长度相等

UPD

好的,主要目标是计算 v1 与 v2 的相关性,其中 v1 在 data.frame v1,t1 内,v2 在 data.frame v2,t2 内。

v1,t1 和 v2,t2 数据帧具有不同的长度,我们知道 t1 和 t2 的时间段相同,因此我们可以将它们重叠。

对于 t1,我们有 1,3,5,7,9,对于 t2,我们有 1,2,3,4,5,6,7,8,9,10。

问题是两个数据帧是分开但同时记录的,所以我需要缩放其中一个数据帧以覆盖另一个数据帧。然后我可以计算 v1 如何影响 v2 的相关性。

这就是为什么我需要将 v1 缩放到 t2 长度。

对不起,伙计们,我不知道如何用英语正确地写出目标。

arrays resize r scale rescale

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

旋转、缩放和平移 2D 坐标?

我目前正在开发一个项目,尝试使用 Python 成像库创建希尔伯特曲线。我创建了一个函数,它将通过每次迭代生成曲线的新坐标,并将它们放入各种列表中,然后我希望能够移动、旋转和缩放。我想知道是否有人可以给我一些提示或方法来做到这一点,因为我完全无能为力。仍在处理大量代码。

#! usr/bin/python
import Image, ImageDraw
import math

# Set the starting shape
img = Image.new('RGB', (1000, 1000))
draw = ImageDraw.Draw(img)

curve_X = [0, 0, 1, 1]
curve_Y = [0, 1, 1, 0]

combinedCurve = zip(curve_X, curve_Y)
draw.line((combinedCurve), fill=(220, 255, 250))
iterations = 5

# Start the loop
for i in range(0, iterations):
    # Make 4 copies of the curve

    copy1_X = list(curve_X)
    copy1_Y = list(curve_Y)

    copy2_X = list(curve_X)
    copy2_Y = list(curve_Y)

    copy3_X = list(curve_X)
    copy3_Y = list(curve_Y) …
Run Code Online (Sandbox Code Playgroud)

python translation rotation scale python-imaging-library

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

SVG 过滤器:比例

我有一个 svg 图形,使用 svg 滤镜附加了一个阴影。我需要缩放阴影,但找不到可以执行此操作的滤镜。有谁知道这是否可能?

<svg class="svg" width="155" height="460" viewbox="0 0 100 100" preserveAspectRatio ="xMidYMin meet">
    <filter id="shadow" class="shadow" width="200%" height="200%">
        <feOffset           dx="0" dy="30"              in="SourceAlpha"    result="offset" />
        <feFlood            flood-opacity="0.12"                            result="opacity" />
        <feComposite                                    operator="in"       in="opacity"        in2="offset"    result="opacityOffset"  />
        <feMerge class="everything">
            <feMergeNode in="opacityBlurOffset" />
            <feMergeNode in="SourceGraphic" />
        </feMerge>
    </filter>
    <circle class="circle"
            cx="50" 
            cy="50" 
            r="40"
            fill="tomato"
            filter="url(#shadow)"/>
</svg>
Run Code Online (Sandbox Code Playgroud)

http://codepen.io/bradjohnwoods/pen/XXMPGY

scale svg-filters

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

根据组缩放所有值

我有一个类似于这个的数据框

ID <- c(1,1,1,1,1,2,2,2,2,2,3,3,3,3,3)
p1 <- c(21000, 23400, 26800, 2345, 23464, 34563, 456433, 56543, 34543,3524, 353, 3432, 4542, 6343, 4534 )
p2 <- c(234235, 2342342, 32, 23432, 23423, 2342342, 34, 2343, 23434, 23434, 34, 234, 2343, 34, 5)
my.df <- data.frame(ID, p1, p2)
Run Code Online (Sandbox Code Playgroud)

现在我想根据它们的 ID缩放 p1 和 p2 中的值。因此,不会像使用 tapply() 函数那样缩放整列,而是对 ID 1 的所有值进行一次缩放,然后对 ID 2 的所有值进行缩放,等等。 p2 的缩放也是如此。新数据框应包含缩放值。

我已经试过了

df_scaled <- ddply(my.df, my.df$ID, scale(my.df$p1))
Run Code Online (Sandbox Code Playgroud)

但得到错误信息

.fun is not a function.
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

r scale tapply

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

seaborn modify y axis (log scale) to show more values

I have plotted a boxplot using seaborn, the y axis is uses a log scale (time in miliseconds). I would like to make the y axis more clear by including more values on the axis. How could I achieve that? The code used and the graph generated are below.

ax2 = sns.boxplot(x="xVals", y="Time", data=df2, whis=[0, 100])
ax2.set(yscale="log")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

python axis graph scale seaborn

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

使用 ggplot 绘制具有两个 y 刻度的图形

所以我试图在一个图中编译几个数据框。对于我的 x 值,我有天数,对于 y,我有发生某事的频率。我的问题是数据帧 (df3) 之一的范围从 0 到 3,其他的范围从 0 到 50。

虚拟数据帧:

day<-c(1,2,3)
b<-c(23,44,22)
c<-c(12,35,49)
d<-c(1,1,3)

df1<-data.frame(day,b)
df2<-data.frame(day,c)
df3<-data.frame(day,d)


ggplot()+ 
  geom_line(data=df1, aes(x=day, y=df1$`b`), color="red") +
  geom_line(data=df2, aes(x=day, y=df2$`c` ), color="green")+
  geom_line(data=df3, aes(x=day, y=df3$`d` ), color="blue")+
  labs(x="Days", y="Number of occurrences")
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我想为 df1 和 df2 创建一个不同的比例,并为 df3 创建另一个。

更新:

我正在尝试这个,但它覆盖了以前的比例:

d<-ggplot()+ 
  geom_line(data=df1, aes(x=day, y=df1$`a`), color="red") +
  geom_line(data=df2, aes(x=day, y=df2$`b` ), color="green")+
  scale_y_continuous(limits=c(0, 50))+
  labs(x="Days", y="Number of occurrences")

d+geom_line(data=df3, aes(x=day, y=df3$`c` ), color="blue")+
  scale_y_continuous(limits=c(0, 3))
Run Code Online (Sandbox Code Playgroud)

r scale ggplot2

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

绘制 yaxis2 手动缩放

我有一个破折号仪表板,我似乎无法重新调整我的辅助 y 轴。有没有办法做到这一点?我试过弄乱 go.Layout 中的域参数和范围参数。我需要按比例缩小音量条形图并占据绘图高度的 10%,这样它就不会与我的烛台重叠。

非常感谢。任何帮助表示赞赏。

烛台图表

import pandas as pd
import pandas_datareader.data as web
import plotly.offline as pyo
import plotly.graph_objs as go


stock_ticker='AAPL'
start_date='2019-04-01'
end_date='2019-05-22'


data=[]

hist_stock_df = web.DataReader(stock_ticker,'iex',start_date, end_date)



data.append(go.Candlestick(x=hist_stock_df.index,
                            open=hist_stock_df['open'],
                            high=hist_stock_df['high'],
                            low=hist_stock_df['low'],
                            close=hist_stock_df['close'],
                            name='AAPL'))

data.append(go.Bar(x=hist_stock_df.index,
                    y=hist_stock_df['volume'].values,
                    yaxis='y2'))
                    #y0=1000000

layout=go.Layout(title= 'Candestick Chart of AAPL',
                xaxis=dict(title='Date',rangeslider=dict(visible=False)),
                yaxis=dict(title='Price'),
                plot_bgcolor='#9b9b9b',
                paper_bgcolor='#9b9b9b',
                font=dict(color='#c4c4c4'),
                yaxis2=dict(title='Volume',
                            overlaying='y',
                            side='right'))
                            #scaleanchor='y'))
                            #scaleratio=0.00000001,
                            #rangemode='tozero',
                            #constraintoward='bottom',
                            #domain=[0,0.1]))


fig = go.Figure(data=data, layout=layout)

pyo.iplot(fig)
Run Code Online (Sandbox Code Playgroud)

我试过弄乱注释的参数

更新

通过这种布局参数的组合,我设法重新调整了条形图,但现在有两个 x 轴,我一直试图弄清楚如何将中间的 x 轴降低。

更新参数

layout=go.Layout(title= 'Candestick Chart of AAPL',
                xaxis=dict(title='Date',rangeslider=dict(visible=False)),
                yaxis=dict(title='Price'),
                plot_bgcolor='#9b9b9b',
                paper_bgcolor='#9b9b9b', …
Run Code Online (Sandbox Code Playgroud)

python axis scale plotly

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

R ggplot热图,多行在同一图形上具有单独的图例

我正在尝试使用 ggplot2 制作一张热图,其中包含 3 种类型的变量,每个变量都需要自己独立的图例/比例。

我能够将它们全部绘制在一张热图中(如下图所示),但我无法将它们分开以拥有自己的图例。我的三个类别是行“Score”、“samp1”和其余数据。我希望每个人都有自己独立的传奇,以及各自的范围。

我唯一的补充是让行得分有一个绿色、黄色、红色(低、中、高)配色方案,如果这可以包含在这个问题中的话。

到目前为止我所拥有的图像

这是我用来创建该图的代码

library(ggplot2)
test_data <- read.csv("test_table.csv", row.names = 1)

ggplot(test_data, aes(x=sample, y=id, fill = value)) + 
  geom_raster() + 
  theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1), # lables vertical
        strip.text.y = element_blank()) +  #remove facet bar on y 
  scale_fill_gradient(low = "darkblue", high = "lightblue") +
  ggtitle("test table") +
  facet_grid(rows = vars(test_data$category), 
             cols = vars(test_data$group), scales = "free", space="free_y") #facets to add gaps 
Run Code Online (Sandbox Code Playgroud)

我已经使用 facets 按样本和我上面描述的 3 个类别来分离数据。我也希望使用这个分组来创建他们自己的图例,但我不确定这是否可行。

单击此处下载数据(预熔化)。

先感谢您。

r legend scale heatmap ggplot2

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

RecyclerView 中的可缩放视图

我在 ViewHolder 中有一个可缩放的视图,缩放的工作方式如下:

private void applyScaleAndTranslation() {
     child().setScaleX(scale);
     child().setScaleY(scale);
     child().setTranslationX(dx);
     child().setTranslationY(dy);
}
Run Code Online (Sandbox Code Playgroud)

如果视图放在 XML 中,一切正常,但在 RecyclerView 中,我可以看到视图在容器外。

我知道RecyclerView.ChildDrawingOrderCallback,我可以更改顺序,但不能禁用它。

是否可以禁用在容器外绘图,或者我可以用另一种方式缩放视图?

诸如此类的android:clipChildren="false"事情没有帮助。

这是问题的屏幕截图:

视图重叠并相互剪裁。

java android scale kotlin android-recyclerview

5
推荐指数
0
解决办法
57
查看次数