First, find the Chinese font you want to use in Font Book.app
For example, this Hei font is pretty good

Then use matplotlibâs fontmanager to find the name it recognizes
Run the following in Jupyter:
from matplotlib.font_manager import FontManager
import json
fonts = FontManager()
font_list = json.dumps([f.name for f in fonts.ttflist], ensure_ascii=False, indent=4)
print(font_list)
```\n\nGet a list
[
âDejaVu Serifâ,
âSTIXSizeOneSymâ,
âSTIXSizeThreeSymâ,
âSTIXGeneralâ,
âSTIXNonUnicodeâ,
âDejaVu Serifâ,
âcmb10â,
âSTIXSizeOneSymâ,
âDejaVu Sansâ,
âSTIXSizeTwoSymâ,
âSTIXSizeFourSymâ,
âSTIXSizeFiveSymâ,
âcmsy10â,
âcmtt10â,
âSTIXNonUnicodeâ,
âDejaVu Sans Monoâ,
âcmex10â,
âDejaVu Serifâ,
âcmss10â,
âSTIXSizeThreeSymâ,
âSTIXSizeFourSymâ,
âSTIXSizeTwoSymâ,
âDejaVu Sans Monoâ,
âDejaVu Sans Monoâ,
âcmr10â,
âDejaVu Sansâ,
âSTIXNonUnicodeâ,
âDejaVu Sans Displayâ,
âDejaVu Sansâ,
âDejaVu Sansâ,
âDejaVu Serifâ,
âSTIXGeneralâ,
âcmmi10â,
âSTIXGeneralâ,
âSTIXGeneralâ,
âDejaVu Sans Monoâ,
âSTIXNonUnicodeâ,
âDejaVu Serif Displayâ,
âThonburiâ,
âNoto Sans Saurashtraâ,
âFarisiâ,
âAppleGothicâ,
âKokonorâ,
âArialâ,
âNoto Sans Tagbanwaâ,
âNoto Sans Duployanâ,
âApple SD Gothic Neoâ,
âGurmukhi Sangam MNâ,
âTrattatelloâ,
âDamascusâ,
âNoteworthyâ,
âNoto Sans Sora Sompengâ,
âGalvjiâ,
âNoto Sans Rejangâ,
âArial Narrowâ,
âHeiti TCâ,
âNoto Sans Psalter Pahlaviâ,
âBodoni 72 Oldstyleâ,
âNoto Sans Hanifi Rohingyaâ,
âNoto Sans Buhidâ,
âSTIXSizeFourSymâ,
âNoto Sans Khudawadiâ,
âNoto Sans Vaiâ,
âNoto Sans Tai Thamâ,
âSTIXIntegralsUpSmâ,
âSTIXIntegralsUpâ,
âLuminariâ,
âKhmer Sangam MNâ,
âSTIXVariantsâ,
âFuturaâ,
âSTIXGeneralâ,
âTimes New Romanâ,
âHeiti TCâ,
âSTIXIntegralsUpâ,
âHiragino Sansâ,
âNoto Nastaliq Urduâ,
âNoto Sans Kayah Liâ,
âComic Sans MSâ,
âPlantagenet Cherokeeâ,
â.SF Soft Numericâ,
âHiragino Sansâ,
âPT Serif Captionâ,
âArial Narrowâ,
âArial Unicode MSâ,
âGurmukhi MTâ,
âNoto Sans Old Turkicâ,
âNoto Sans Lepchaâ,
âNoto Sans Limbuâ,
âPhosphateâ,
âHiragino Sansâ,
âBodoni Ornamentsâ,
âNoto Sans Inscriptional Pahlaviâ,
âSanaâ,
âNoto Sans Modiâ,
â.New Yorkâ,
âNoto Sans Bhaiksukiâ,
âNoto Sans Multaniâ,
âSTIXNonUnicodeâ,
âSkiaâ,
âNoto Sans Myanmarâ,
âNoto Sans Imperial Aramaicâ,
âOriya MNâ,
âNoto Sans Old North Arabianâ,
âNoto Sans Masaram Gondiâ,
âNoto Sans Pau Cin Hauâ,
â.SF NS Monoâ,
âGenevaâ,
âCorsiva Hebrewâ,
âTelugu MNâ,
âAcademy Engraved LETâ,
âNoto Sans Glagoliticâ,
âSukhumvit Setâ,
âZapf Dingbatsâ,
â.SF Cameraâ,
âAvenirâ,
âWebdingsâ,
âMarionâ,
âNoto Sans Nabataeanâ,
âArialâ,
âArial Unicode MSâ,
âBaghdadâ,
âEuphemia UCASâ,
âNoto Sans Khojkiâ,
âNoto Sans Old Hungarianâ,
âNoto Sans Hatranâ,
â.SF Armenianâ,
âNoto Sans New Tai Lueâ,
âNoto Sans Sundaneseâ,
âNadeemâ,
âDiwan Thuluthâ,
â.New Yorkâ,
âITF Devanagariâ,
âNoto Sans Sharadaâ,
â.SF NS Roundedâ,
âKannada Sangam MNâ,
â.SF Compact Roundedâ,
âCourier Newâ,
âAppleMyungjoâ,
âSystem Fontâ,
âNoto Sans Avestanâ,
âSTIXSizeThreeSymâ,
âMyanmar Sangam MNâ,
âSTIXIntegralsSmâ,
âSTIXNonUnicodeâ,
âOriya Sangam MNâ,
âNoto Sans Meetei Mayekâ,
âNoto Sans Mende Kikakuiâ,
âDIN Condensedâ,
âNoto Sans Thaanaâ,
âNoto Sans Kaithiâ,
âOptimaâ,
âNoto Sans Tai Leâ,
âNoto Sans Bamumâ,
âDecoType Naskhâ,
âAmerican Typewriterâ,
âTrebuchet MSâ,
âHiragino Sans GBâ,
âTahomaâ,
âVerdanaâ,
âNoto Sans Bassa Vahâ,
âHerculanumâ,
âMishafiâ,
âTimes New Romanâ,
â.SF NS Monoâ,
âSTIXSizeFourSymâ,
âSystem Fontâ,
âNoto Sans Elbasanâ,
âHiragino Sansâ,
âNoto Sans Cuneiformâ,
âNoto Sans Carianâ,
âZapfinoâ,
âCourier Newâ,
âNoto Sans Syloti Nagriâ,
âGeorgiaâ,
âSTIXGeneralâ,
âSymbolâ,
âWingdings 2â,
âPT Sansâ,
âDidotâ,
âNoto Sans Javaneseâ,
âArial Hebrewâ,
âKailasaâ,
âNew Peninim MTâ,
âSTIXSizeOneSymâ,
âHiragino Sansâ,
âNoto Serif Ahomâ,
â.SF Compactâ,
âKohinoor Devanagariâ,
âKefaâ,
âNoto Sans Caucasian Albanianâ,
âGeorgiaâ,
âBrush Script MTâ,
âNoto Sans Osmanyaâ,
âGujarati MTâ,
âWingdings 3â,
âNoto Sans Osageâ,
âTelugu Sangam MNâ,
âNoto Sans Siddhamâ,
âAvenir Nextâ,
âMukta Maheeâ,
âRaananaâ,
âWaseemâ,
âHiragino Maru Gothic Proâ,
âMalayalam MNâ,
âNoto Sans Wanchoâ,
âPT Serifâ,
âTimesâ,
âParty LETâ,
âNoto Sans Old Permicâ,
âNoto Sans Mandaicâ,
âHiragino Mincho ProNâ,
âNoto Sans Miaoâ,
âPalatinoâ,
âGujarati Sangam MNâ,
âSTIXIntegralsUpDâ,
âNoto Sans Gunjala Gondiâ,
â.SF Armenian Roundedâ,
âNoto Sans Lydianâ,
âDiwan Kufiâ,
âArialâ,
âKhmer MNâ,
âNoto Sans Mroâ,
âKohinoor Gujaratiâ,
âNoto Sans Armenianâ,
âSTIXIntegralsSmâ,
âMshtakanâ,
âNoto Serif Myanmarâ,
âSTIX Two Textâ,
âPapyrusâ,
â.SF Hebrewâ,
âSavoye LETâ,
âFarahâ,
âSTIXSizeFiveSymâ,
âNoto Sans Tifinaghâ,
âTimes New Romanâ,
âChalkdusterâ,
âSTIXIntegralsDâ,
âNoto Sans Lisuâ,
âHelvetica Neueâ,
âNoto Sans Meroiticâ,
âSongti SCâ,
âApple Symbolsâ,
âNoto Sans Gothicâ,
âGeorgiaâ,
âBodoni 72â,
âChalkboard SEâ,
âDIN Alternateâ,
âSuperclarendonâ,
âVerdanaâ,
âNoto Sans Cypriotâ,
âNoto Sans Brahmiâ,
âComic Sans MSâ,
âNoto Sans Chakmaâ,
âNoto Sans Bugineseâ,
â.Aqua Kanaâ,
âNoto Sans Warang Citiâ,
âCochinâ,
âHiragino Sansâ,
âSTIXGeneralâ,
âNoto Serif Hmong Nyiakengâ,
âGeeza Proâ,
âHiragino Sansâ,
âNoto Sans Copticâ,
âNoto Sans Samaritanâ,
âGurmukhi MNâ,
âSinhala MNâ,
âSTIXIntegralsUpSmâ,
â.ThonburiUIâ,
âArial Narrowâ,
âTamil MNâ,
âRockwellâ,
âApple Brailleâ,
âMonacoâ,
â.SF Hebrew Roundedâ,
âCharterâ,
âTrebuchet MSâ,
âBaskervilleâ,
âAl Tarikhâ,
âLao MNâ,
âBangla Sangam MNâ,
âApple Brailleâ,
âHiragino Sansâ,
âDevanagari MTâ,
âNoto Sans Palmyreneâ,
âMyanmar MNâ,
â.SF Arabicâ,
âMicrosoft Sans Serifâ,
âApple Brailleâ,
âPingFang HKâ,
âSTIXSizeTwoSymâ,
âImpactâ,
âArial Rounded MT Boldâ,
âVerdanaâ,
âSinhala Sangam MNâ,
âSTIXNonUnicodeâ,
âChalkboardâ,
âHoefler Textâ,
âHiragino Sansâ,
âBangla MNâ,
âHoefler Textâ,
âNoto Sans Marchenâ,
âSTIXGeneralâ,
âSTIXSizeThreeSymâ,
â.SF Arabic Roundedâ,
â.Keyboardâ,
âSeravekâ,
âTrebuchet MSâ,
âMishafi Goldâ,
âSnell Roundhandâ,
âNoto Sans Mongolianâ,
âNoto Sans Hanunooâ,
âNoto Sans Tirhutaâ,
âNoto Sans Adlamâ,
âKufiStandardGKâ,
âSTIXVariantsâ,
âNoto Sans Linear Bâ,
âVerdanaâ,
âNoto Sans Newaâ,
âNoto Sans PhagsPaâ,
âAthelasâ,
âAndale Monoâ,
âNoto Sans Syriacâ,
âLucida Grandeâ,
âNoto Sans Takriâ,
âIowan Old Styleâ,
âAyuthayaâ,
â.SF Compactâ,
âBig Caslonâ,
âSilomâ,
âKohinoor Banglaâ,
âNoto Sans Chamâ,
âMunaâ,
âNoto Sans Pahawh Hmongâ,
âNoto Sans Yiâ,
âSTIXSizeTwoSymâ,
âSathuâ,
âKannada MNâ,
âNoto Sans Egyptian Hieroglyphsâ,
âInaiMathiâ,
âCourierâ,
âMarker Feltâ,
âAvenir Next Condensedâ,
âTrebuchet MSâ,
âArial Narrowâ,
âNoto Sans Manichaeanâ,
âGill Sansâ,
âBradley Handâ,
âApple Brailleâ,
âNoto Sans Tagalogâ,
âSTIXIntegralsDâ,
âNoto Sans Kharoshthiâ,
âNoto Sans Ugariticâ,
âSTIXIntegralsUpDâ,
âSTIXSizeOneSymâ,
âCopperplateâ,
âBodoni 72 Smallcapsâ,
âNoto Sans Old South Arabianâ,
âNoto Sans Mahajaniâ,
âTamil Sangam MNâ,
âNoto Sans Old Italicâ,
âArial Blackâ,
âApple Brailleâ,
âNoto Sans Tai Vietâ,
âApple Chanceryâ,
âNoto Sans Oriyaâ,
âKrungthepâ,
âNoto Sans Canadian Aboriginalâ,
âSTIX Two Mathâ,
â.SF Georgian Roundedâ,
âKohinoor Teluguâ,
âAl Bayanâ,
âGeorgiaâ,
âLao Sangam MNâ,
âBeirutâ,
âSTIX Two Textâ,
âHiragino Sansâ,
âNoto Sans Ol Chikiâ,
â.SF Georgianâ,
âTimes New Romanâ,
âPT Monoâ,
âNoto Sans NKoâ
"SignPainter",
"Shree Devanagari 714",
"Devanagari Sangam MN",
"STIXNonUnicode",
"Courier New",
"Noto Sans Kannada",
"Menlo",
"Noto Sans Inscriptional Parthian",
"Wingdings",
"Tahoma",
"Noto Serif Yezidi",
"Noto Sans Batak",
"Noto Sans Old Persian",
"Noto Sans Lycian",
"Arial",
"Noto Sans Linear A",
"Malayalam Sangam MN",
"Noto Sans Phoenician",
"Courier New",
"Noto Serif Balinese",
"Al Nile",
"Helvetica"
]
Searching for Hei in this list, found
"Arial Narrow",
"Heiti TC",
"Noto Sans Psalter Pahlavi",
This Heiti TC is the real name of the font recognized by matplotlib.
Setting up matplotlib
Now run this in Jupyter, after which all plt calls will use the Heiti TC font. If you want to reset the font, remember to restart the kernel.
%matplotlib inline
from matplotlib import pyplot as plt
plt.rcParams['font.family'] = ['Heiti TC']