小编Art*_*Art的帖子

matlab:具有大量数据点的散点图

我正在尝试绘制散点图,例如:

scatter(coor(:, 2), coor(:, 3), 1, coor(:, 4));
Run Code Online (Sandbox Code Playgroud)

问题是,我有很多坐标要绘制(~100 000).它花了很长时间来绘制它,当我尝试将图形输出到tiff时 - 然后matlab已经死了好几分钟...任何改善绘图的解决方案,或者至少是tiff export?

编辑:忘了提,第三坐标(coor(:,4))是一个颜色代码.

所以,当我使用分散(如上所述)时,我在下面的图像上有类似的东西,这就是我想要看到的东西(只是它超级慢,我无法导出):

分散

当我做:

plot3(coor(:,2),coor(:,3),coor(:,4),'.')

效果不再那么酷(注意:图像不是来自相同的坐标......):

在此输入图像描述

matlab plot scatter figure

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

matlab:从数组中删除元素

我有很大的阵容.为简单起见,我们将其简化为:

A = [1 1 1 1 2 2 3 3 3 3 4 4 5 5 5 5 5 5 5 5];
Run Code Online (Sandbox Code Playgroud)

因此,有一组1(4个元素),2个(2个元素),3个(4个元素),4个(2个元素)和5个(8个元素).现在,我想只保留属于3个或更多元素组的列.所以它会像:

B = [1 1 1 1 3 3 3 3 5 5 5 5 5 5 5 5];
Run Code Online (Sandbox Code Playgroud)

我正在使用for循环,分别扫描1个,2个,3个等等,但它对于大阵列非常慢...感谢任何建议如何以更有效的方式做到:)艺术.

arrays matlab grouping matrix

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

matlab:如何保存TIFF系列?

假设我有一个3D数组'img'(x,y,frame),并希望将其保存为TIFF.到目前为止,我通过这样一个一个地保存来做到这一点:

for K=1:length(img(1, 1, :))
   outputFileName = sprintf('img_%d.tif',K);
   imwrite(img(:, :, K), outputFileName);
end
Run Code Online (Sandbox Code Playgroud)

很酷,但如果我想将它保存为一个tiff堆栈怎么办?怎么做?谢谢 :)

matlab tiff image save

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

第二个子图消失了

我有一个奇怪的(可能很容易解决)问题.我试图绘制(使用面板)两个图:

a1 = subplot(2,1,1, 'Parent', handles.cpd_plot, 'Position', [0.1, 0.4, 0.85, 0.45]);
a2 = subplot(2,1,2, 'Parent', handles.cpd_plot, 'Position', [0.1, 0.1, 0.85, 0.15]);
Run Code Online (Sandbox Code Playgroud)

但在绘制a2之后,a1消失了.我看到它的位置有些问题,当我提升a1一点('Position', [0.1, 0.5, 0.85, 0.45])它的工作(但它必须> = 0.5).问题出在哪儿?谢谢!

matlab user-interface plot figure subplot

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

matlab:线性拟合的最佳点数

我想对几个数据点进行线性拟合,如图所示.因为我知道截距(在这种情况下说是0.05),所以我想只使用这个特定的截距来拟合线性区域中的点.在这种情况下,我们可以说点5:22(但不是22:30).我正在寻找简单的算法来确定这个最佳点数,基于......嗯,这就是问题...... R ^ 2?任何想法怎么做?我正在考虑使用点1到2:30,2到3:30来探测R ^ 2,但是我真的不知道如何将它包含在清晰简单的功能中.对于我使用的固定拦截的拟合polyfit0(http://www.mathworks.com/matlabcentral/fileexchange/272-polyfit0-m).谢谢你的任何建议!

编辑:样本数据:

intercept = 0.043;
x = 0.01:0.01:0.3;
y = [0.0530642513911393,0.0600786706929529,0.0673485248329648,0.0794662409166333,0.0895915873196170,0.103837395346484,0.107224784565365,0.120300492775786,0.126318699218730,0.141508831492330,0.147135757370947,0.161734674733680,0.170982455701681,0.191799936622712,0.192312642057298,0.204771365716483,0.222689541632988,0.242582251060963,0.252582727297656,0.267390860166283,0.282890010610515,0.292381165948577,0.307990544720676,0.314264952297699,0.332344368808024,0.355781519885611,0.373277721489254,0.387722683944356,0.413648156978284,0.446500064130389;];
Run Code Online (Sandbox Code Playgroud)

线性拟合

algorithm matlab linear-regression

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

matlab: uigetfile 包含一个或多个文件

我有一个愚蠢的问题。我想知道之后选择了多少个文件:

[fileName, pathName, filterIndex] = uigetfile({'*.*';'*.xls';'*.txt';'*.csv'}, 'Select file(s)', 'MultiSelect', 'on');
Run Code Online (Sandbox Code Playgroud)

当超过1个时,我可以做length(fileName);

没关系。但是,当只选择一个时,这给了我文件名的实际长度(字符数量):/

matlab file

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

R:如何删除图中的微小轴边距

我想摆脱X和Y值(图片上的红线)接近零的小边距,并仅绘制红色方块中显示的内容。

我尝试设置par(mar = rep(0, 4)xlim=c(0, ...)ylim=c(0, ...)但是R仍然继续添加这个很小的边距。如何摆脱它?

以边距在R中绘图

编辑:关于我的问题的另一种观点:运行后:

require(plotrix)
axisRange <- c(0,500)
plot(NULL, xlim = axisRange, ylim=axisRange)
draw.circle(0, 0, 200, col = "white", border = "red")
Run Code Online (Sandbox Code Playgroud)

我最后得到一个不在“ true” 0,0点处的圆: 圆应在0,0点上

EDIT2:实际上我想做的是绘制不同半径的圆,并将其保存为图像。这就是为什么我在乎利润。我最终得到这样的结果(角落上的斑点仅供参考):

在此处输入图片说明

并且应该更像这样: 在此处输入图片说明

plot r margin plotrix

3
推荐指数
1
解决办法
1344
查看次数

如何用颜色渐变填充直方图?

我有一个简单的问题.如何ggplot2使用固定binwidth和填充彩虹色(或任何其他调色板)绘制直方图?

可以说我有这样的数据:

myData <- abs(rnorm(1000))
Run Code Online (Sandbox Code Playgroud)

我想绘制直方图,使用例如binwidth=.1.然而,这将导致不同数量的箱子,具体取决于数据:

ggplot() + geom_histogram(aes(x = myData), binwidth=.1) 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如果我知道箱子的数量(例如n=15),我会使用类似的东西:

ggplot() + geom_histogram(aes(x = myData), binwidth=.1, fill=rainbow(n))
Run Code Online (Sandbox Code Playgroud)

但随着垃圾箱数量的变化,我会陷入这个简单的问题.

r histogram ggplot2 color-palette

3
推荐指数
1
解决办法
5880
查看次数

Shinydahsboardplus:如何添加没有标题的框?

最近更新ShinydasboardPlus(至 2.0)后,我无法box在没有标题和没有标题空间的情况下进行制作。

我试过了title = NULL, headerBorder = FALSE,仍然有这个空间。如何摆脱它?我想要一个只有内容的盒子,没有标题,没有标题空间。 在此输入图像描述

谢谢!

例子:

library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
ui <- dashboardPage(
  title = "Box API",
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    box(
      title = NULL,
      headerBorder = FALSE,
      "Box body")
  )
)

server <- function(input, output, session) {
}

shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)

r shiny shinydashboard shinydashboardplus

3
推荐指数
1
解决办法
1618
查看次数

matlab:找到两个矩阵共同的值的索引

我有一个简单的问题.

假设我们有两个数组:

data = [1 1 2 2 2 2 3 3 3 4 4 4 4 4 5 5 5 5 6 6 6];
A = [1 3 6];
Run Code Online (Sandbox Code Playgroud)

我希望数据的索引值等于A中的任何值.

即答案是:1,2,7,8,9,19,20,21

怎么做而不使用for循环并逐个扫描A中的每个值..?谢谢!艺术.

arrays matlab compare find indices

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