MATLAB GUI displays black with XQuartz

I am running MATLAB R2021a from a remote Linux server. I am able to bring up the GUI on my local macbook running macOS 12.1 using XQuartz and ssh, but the GUI usually displays black where the white usually is. Sometimes the window displays in the right color, (white) but only for a few seconds, then reverts back to the black. When it's black, I can still see the GUI, it's just very hard to read.

16 Comments

yes,sir,may be edit the fig file,set bgcolor to yello or green and so on,then check the result
Hi Hanna,
It happened to me as well.
Did you find a solution for this?
Thanks,
Koko
This happens to me too... Very annoying.
I also can't find a solution.
Any clues, anyone...?
I have the same problem
I have the same problem too.
Someone on the thread says "I had the same problem and found an alternative solution: Installing realvnc and running vncserver on the workstation with the Matlab installation."
i have the same issue, did anyone find the solution?
I have the same problem too.
I have the same problem too
Facheng Li
Facheng Li on 7 Nov 2022
Edited: Facheng Li on 7 Nov 2022
I find it works to uninstall XQuartz-2.8.2 and install XQuartz-2.8.3_rc1, then run the command in the terminal:
`defaults write org.xquartz.X11 enable_render_extension 0`
Thanks to the issue mentioned above.
However, the reation of XQuartz is still very slow. It is better to use vscode and matlab plug-ins.
it is still not working.... i'm having the same issue... but i just happened when I updated from Monterrey macOS to ventura....
I'm having the same issue as well, any updates on the solution?
vip
vip on 5 Jan 2023
Edited: vip on 5 Jan 2023
Same issue with R2022b. Remote system is Oracle Linux 8. Client is macOS 12.6.2 with XQuartz 2.8.4. I notice the windows turns black when I move the mouse and settles back to normal after a few seconds.
I'm having the same issue with two M1 Macs, both with OSVentura. Connecting to a Centos7 remote system with the latest XQuartz. The MATLAB (R2022a) GUI has a black background that makes it unusable. If I have dual monitors the window becomes normal when I move the cursor to the monitor that does not have the MATLAB GUI.

Sign in to comment.

Answers (3)

create a file "java.opts" in the home folder
mention the following inside that file
-Dsun.java2d.xrender=false
-Dsun.java2d.pmoffscreen=false
Restart matlab from home .
Check if it solves the issue.
I solved the same like this.

11 Comments

It works also for me!
Thanks
d
Worked for me as well! Thanks!
Perfect, same problem and this was the answer!
This solution worked like a charm! Thank you!
hello, i want to know ,where is the home folder. thanks
Hello,
Run this to get your HOME location
echo $HOME
Check this site for more details
Had this problem on an 2023 Macbook Pro M2 and MATLAB 2022a. The fix worked as described above. Typically the home folder can also be changed into using cd ~/ . I will update MATLAB and this post at some point.
Thanks! This solved my problem! you helped me a lot! How do you figured out this solutioin? It's incredible!
Thank you, it worked for me.
Thanks, this works for me too.
Works for me too, Thanks.

Sign in to comment.

Similar issue for me R2020b running on Ubuntu Linux remote system. Client is MacOS 13.1 with XQuartz 2.8.5 (xorg-server 21.1.6).
The window become "normal" when I type on the keyboard in other programs (like I'm doing right now in Chrome), and turns black when I move the mouse.
This is not an issue with the remote linux server, but with XQuartz (black background issue occurs with other applications too, not only Matlab).
On the XQuartz github:
They suggest to close XQuartz then issue this command on your mac:
defaults write org.xquartz.X11 enable_render_extension 0
Then run your application again (in our case, Matlab). This works for me, and seem like the right solution. The "defaults write" is stiky, so you only have to do this once.
By the way, if you see the following errors when starting Matlab (or other applications that use glx, like glxgears, etc...):
$ run_my_glx_application
MESA: error: ZINK: failed to choose pdev
glx: failed to create drisw screen
No matching fbConfigs or visuals found
This is what I did. First, I allowed GLX on XQuartz:
defaults write org.xquartz.X11 enable_iglx -bool YES
Second, I went to XQuartz => Settings => Security => and "Allow connections from network clients.
Finally, I added the following to my .bashrc (on the remote linux server):
# Fix OpenGL applications accessed remotely
LIBGL_ALWAYS_INDIRECT=1
I hope this helps.

Categories

Products

Release

R2021a

Asked:

on 4 Jan 2022

Commented:

on 10 Jan 2025

Community Treasure Hunt

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

Start Hunting!