I'm using leaflet in IRkernel, but the map produced doesn't show up in the output cell.
Actually, the map shows behind the cell, as can be seen from this figure, where the red arrow points:
Is there any way to fix it?
library(leaflet)
m <- leaflet() %>% addTiles()
m
I've notice the method to call saveWidget(), but the html file generated doesn't include Tiles layer.
Related
This is a fairly entry-level question but I could not find the answer to it here on SO or on Mathworks help.
I want to add a color bar to an image I am loading and then save the image along with the created color bar.
The result I am looking for is like figure 1 on this page except that there is an image instead of the plot and the color bar shows the range of intensities in the image.
The page made me think that running
colorbar(<trarget matrix>);
Would do the trick but that throws an error when I try to apply it to an image.
So my question is, how do I make a color bar for my image and once made what would be a good way to concatenate the two for saving.
I am loading the image using the following snippet
IMGpath = 'barbaraSmall.png';
im = imread(IMGpath, 'png');
%
%colorbar(im); >>Throws an error
imshow(im);
imwrite(im, 'barabara_withMAP.png', 'png');
The syntax that you're using is colorbar(target). According to the documentation,
target is:
"Target for the colorbar, specified as an Axes object, a PolarAxes object, or a graphics object that has a ColorbarVisible property".
You're inputting an image matrix (im) as target which is none of the above mentioned objects. You can simply just enter:
colorbar;
or if you want to give an axes' handle then:
colorbar(gca);
You can save the result using saveas.
saveas(gca, 'barabara_withMAP.png')
I am using the Charts library in an iOS application. The required chart I am implementing, displays realtime values fed from a hardware peripheral. I already implemented adding new entries and scrolling to the latest value, so the chart appears to be updating constantly (sort of flowing to the left from the right side of the screen).
Now I need to draw a circle on the right side of the graph, but for that I would need to receive the Y value for the currently visible X. This is easy to get for the points in the DataSet, but I can't find a way to get Y value for the interpolated points between the DataSet values.
Here is what the graph looks like:
I have a LeafletJs Map with a Lat / Lon graticule. However what I would like at this point is to overlay a grid on the map with a fixed number of rows & columns (say, 19 rows and 17 columns), where the little rectangles that make up the grid would not change size as I zoom in and out on the map. How would I do that?
There is a Leaflet plugin called leaflet-virtual-grid (based on L.Grid) which does what you want. The provided examples need a few fixes to work, here is the result.
I didn't see any option to make the x and y length different.
How can I deal with overlapping lines in the Leaflet map library?
I download geoJSON from the server sid and draw it right onto the map. If there are two identical entries, Leaflet draws them twice. This could be fixed by finding exact duplicated on the server side.
That however doesn't work for different datasets sharing some of the same space. As a result parts of both are drawn onto the same spot.
It appears that the lines are being rendered with the default Leaflet Polyline opacity of 0.5. If you were instantiating the Polylines yourself in code, you could override the opacity to make the lines opaque in this manner:
var myPolyLine = new L.Polyline( myPoints, { opacity: 1 } );
The line that would appear on top would then be the line that you added to the map last (one or the other is going to be on top, unless you make them both opaque and the same color). But this may be moot if you are loading in geoJSON directly and don't have control over how Leaflet renders it.
I tried to display a lot of marker on a leaflet map. The data of the marker - coordinates, text... - are stored in a text file.
I made a parser who parse the text, put the data in a big array and then i loop on this array to display each marker.
My problem here is that i got many markers - more than 200, and many of them got the same coordinates.
My code loops well but display only the last marker with each coordinates, how can i display them all properly?
After digging the web around i find a solution which seems to pretty fit my issue.
Leaflet allows you to create "markercluster" which can gather marker together.
Here is a live example : http://leaflet.github.io/Leaflet.markercluster/example/marker-clustering-realworld.388.html