Unable to perform assignment because the size of the left side is 63-by-1 and the size of the right side is 10-by-1 - matlab

Is there a way in MatLab that allows me to create a UItable that allows me to have two columns with a different row size? This is my current code:
app.UITableComparer.ColumnName={app.ListBoxMat.Value,app.ListBoxMat_2.Value};
app.UITableComparer.Data(:,1)=app.valueOne;
app.UITableComparer.Data(:,2)=app.valueTwo;
My expectation was to see my UITable to show the values for each struct but it does not let me since the row sizes are different. Is there any way around this?

Related

How do I reduce the area of the bar graph and increase that of the text in Grafana? (make labels more readable)

I have long strings as labels which is the full identifier of each deployment. How do I increase the area that the strings occupy and reduce the area for the bar graphs in Grafana.
After many attempts, this is the closest that I have come to displaying label strings in a way that is readable. Ideally a table would also be nice, but I was unable to show a table in which the labels form a column (it always took the row)
You can't change that size. I would rather focus how to make labels shorter. (I would say that "max_Sum/" is not necessary there)
IMHO: the best option is to have a table panel for this - yes, you wasn't not able to achieve it, but you only need right query, result format + transformation eventually.

Report labels match a dropdown in report builders

I have a report that is designed to allow users who aren't proficient in Tableau visualize data in the form of a bar graph. There are some drop downs on the side that allow them to select some dimensions. These dimensions then populate the graph. The labels in the graph, however, do not match the dimension name selected, and I was curious how to do this. So for instance on the right hand side Dimension 1 is set to Item Subcategory, and I'd like it to say that in the graph as well, instead of being labeled Dimension 1.
The drop downs on the right are generated from this code in the dimension itself:
If anyone has any ideas on how to do this, I'd really appreciate it. Thanks!
The way I would do this would be to hide the column headers on the sheet itself, or edit their aliases to just a bunch of spaces so it appears blank.
You can then create a sheet with the Dimension 1 parameter on the Text shelf, formatted to look like a column header (or formatted however you want it to look), and add that sheet to the dashboard as a floating sheet. Repeat for the other two dimension parameters, position the sheet above the column so it looks like the header, and there you go! Whenever the parameter changes, the column header will change to match too.
I would note that this only works if the sheet is on a fixed-size dashboard, since floating sheets don't usually play nice with auto-sizing dashboards.

tableau adjust marks size using number

In Marks, click Size and there pops a slider where I can adjust the size of a shape. But how to accurately control the size, is there some property with numbers to accurately control it? I have two sheets to show something similar and I want to display exactly the same sized shapes.
If you want to ensure 'sizes' are the same across two worksheets, I'd suggest snapping the 'size' setting to the center on both, as this is the easiest option to select. You can then use a measure to set the size, if this is desirable, and then the difference in size will be relative on both worksheets.
There isn't a numerical value override for the size slider.
Ben is correct, there isn't yet a numerical value override for the slider. You can use parameters with Min/Max/Sum etc. and a variable to somewhat change the sizes but they have to have multiple entries per line. It is unfortunate that Tableau still doesn't get that people want both a 'relative' sizing system that uses numbers from the dataset and a 'static' sizing system that allows for shapes to be set to '11px' or something along those lines. Yes, you can control that kind of in the dashboard with a vertical and fill entire box etc; but that doesn't address the very real scenario where you want a user to be able to re-size on the fly. Just my two cents.
I ran into this today. Very annoying. Need to keep shapes the same size across all worksheets and therefore same on dashboard.

smartGWT grid not showing summary (need to load all records?)

i have a grid where i need to show the sum of a column at the end of the grid. I use the function
myListGrid.setShowGridSummary(true);
if the grid contains 60 records it will do the summary without problems, if it goes >61 the summary will show no data at all. I believe this problem is caused by the grid paging (not loading all the data at once). Is there a possible workaround for this or maybe a function to load all the data that i'm missing?
myListGrid.setShowAllRecords(true)
Drawing all rows causes longer initial rendering time, but allows smoother vertical scrolling. With a very large number of rows, showAllRows will become too slow.

Calculating unique transformation for multiple images in folder

I'm currently working on an alignment script which aligns two images very well. Usually, I get a data set which contains over 50 images of cells. I normally calculate a transformation matrix (T) based on fluorescent beads. However, this T-matrix gave rise to polarization in unpolarized cells, indicating that the transformation is not optimal. Therefore I switched to another script, which calculates a T-matrix based on cells and not beads. This new T-matrix aligns almost perfectly for a fraction of the cells, but there is always a portion of the images which aligns not so good.
I would like to continue with the alignment on cells, because this script works much better than the alignment on beads. In order to have optimal T-matrix for each image, I would like to calculate unique T-matrices for each image couple. I'm not very skilled in Matlab so the solution I could think of did not work.
Below you can find the current script. It functions by creating variables of the images I want to align and assign them to im1 and im2 in the script:
function [T] = alim(im1, im2, Tstart)
%ALIM Determines the transformation between the cameras.
im3=im2;
if (nargin>2)
im2=imwarp(im2, Tstart,'OutputView',imref2d(size(im1)));
end
optimizer = registration.optimizer.RegularStepGradientDescent;
optimizer.MaximumIterations=500;
metric = registration.metric.MattesMutualInformation;
T = imregtform(im2, im1, 'affine', optimizer, metric);
if (nargin>2)
T.T=Tstart.T*T.T;
end
figure;
imshowpair(im1,imwarp(im3,T,'OutputView',imref2d(size(im1))));
end
I tried to incorporate a loop which imports all images from the folder sequentially and assign these to im1 and im2. However, the problems that arises is that the type of data changes from uint16 into cell, which can't be used for this type of transformation. One defines in the script the location of the folders 'CAM1' and 'CAM2' and the number of images in these folders ('imnum')
for i:imnum
x{i}=imread(strcat(link,'CAM1\',num2str(i),'.tif'));
y{i}=imread(strcat(link,'CAM2\',num2str(i),'.tif'));
I would like to have your view on this problem and hopefully you can make some suggestions on how I can import the images in a folder in one go and keep the data type uint16. I'm always open for suggestions so if you have other ideas on how to solve my problem, I would love it if you shared them with me. If anything is unclear, please contact me with questions!
With kind regards,
Reinier
x is a cell array, where each element x{i} is a uint16 array. Cell arrays can hold any other datatype, including more cell arrays, and are a great way to wrap collections of objects, especially when their sizes and/or types may differ.
In your case, just call your function like this:
T = alim(x{i}, y{i}, tstart);
Or, even better, put the output matrix into a similar cell:
T{i} = alim(x{i}, y{i}, tstart);