Exporting a figure with transparent markers

3 ビュー (過去 30 日間)
Samantha Cox
Samantha Cox 2016 年 4 月 1 日
コメント済み: Samantha Cox 2016 年 4 月 5 日
I need to export a figure with transparent markers. I can not currently find a solution for this. Usually I use export_fig, but this is not working. I have tried plot2svg (which just spits back errors), saveFigure does not work, save2pdf, print, or saving through the interface to any format. Normally I save to .png.
The figure was generated through:
hLine=plot(X,Y,'o','MarkerSize',5,'MarkerFaceColor','k','MarkerEdgeColor','none')
drawnow; hMarkers = hLine.MarkerHandle; hMarkers.get; hMarkers.FaceColorData = uint8(255*[0;0;0;0.5]);
Any help is appreciated
  1 件のコメント
Jeevan Joishi
Jeevan Joishi 2016 年 4 月 5 日
How is it different from having no markers at all or having set the 'MarkerEdgeColor' set to none?

サインインしてコメントする。

回答 (1 件)

Mike Garrity
Mike Garrity 2016 年 4 月 5 日
Reaching inside the Line object and messing with its undocumented internals is not a supported operation for a variety of reasons. One of the reasons is that print won't be able to see what you've done.
There are supported ways to create objects with transparency. For example, in R2015b or R2016a, you could do this:
npts = 250;
X = 1:npts;
Y = randn(1,npts);
scatter(X,Y,'filled','o','MarkerFaceColor','black','MarkerFaceAlpha',.5)
print('-dpdf','foo.pdf')
  1 件のコメント
Samantha Cox
Samantha Cox 2016 年 4 月 5 日
My university only has matlab version 2015a. On the help files it says that FaceAlpha is possible for scatter objects after 2014b, but this does not seem to be true. I found a way to get around it using patches to make the markers...

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLighting, Transparency, and Shading についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by